/* Widget Name: Button Description: Create a custom button with flexible styling, icon support, and click tracking functionality. Author: SiteOrigin Author URI: https://siteorigin.com Documentation: https://siteorigin.com/widgets-bundle/button-widget-documentation/ Keywords: event, icon, link */ class SiteOrigin_Widget_Button_Widget extends SiteOrigin_Widget { public function __construct() { parent::__construct( 'sow-button', __( 'SiteOrigin Button', 'so-widgets-bundle' ), array( 'description' => __( 'Create a custom button with flexible styling, icon support, and click tracking functionality.', 'so-widgets-bundle' ), 'help' => 'https://siteorigin.com/widgets-bundle/button-widget-documentation/', ), array( ), false, plugin_dir_path( __FILE__ ) ); } public function get_settings_form() { return array( 'responsive_breakpoint' => array( 'type' => 'measurement', 'label' => __( 'Responsive Breakpoint', 'so-widgets-bundle' ), 'default' => '780px', 'description' => __( 'This setting controls when the Mobile Align setting will be used. The default value is 780px.', 'so-widgets-bundle' ), ), ); } public function initialize() { $this->register_frontend_styles( array( array( 'sow-button-base', plugin_dir_url( __FILE__ ) . 'css/style.css', array(), SOW_BUNDLE_VERSION, ), ) ); } public function get_widget_form() { return array( 'text' => array( 'type' => 'text', 'label' => __( 'Button Text', 'so-widgets-bundle' ), ), 'url' => array( 'type' => 'link', 'label' => __( 'Destination URL', 'so-widgets-bundle' ), 'allow_shortcode' => true, ), 'new_window' => array( 'type' => 'checkbox', 'default' => false, 'label' => __( 'Open in a new window', 'so-widgets-bundle' ), ), 'download' => array( 'type' => 'checkbox', 'default' => false, 'label' => __( 'Download', 'so-widgets-bundle' ), 'description' => __( 'The Destination URL will be downloaded when a user clicks on the button.', 'so-widgets-bundle' ), ), 'button_icon' => array( 'type' => 'section', 'label' => __( 'Icon', 'so-widgets-bundle' ), 'fields' => array( 'icon_selected' => array( 'type' => 'icon', 'label' => __( 'Icon', 'so-widgets-bundle' ), ), 'icon_color' => array( 'type' => 'color', 'label' => __( 'Icon Color', 'so-widgets-bundle' ), ), 'icon' => array( 'type' => 'media', 'label' => __( 'Image Icon', 'so-widgets-bundle' ), 'description' => __( 'Replaces the icon with your own image icon.', 'so-widgets-bundle' ), ), 'icon_placement' => array( 'type' => 'select', 'label' => __( 'Icon Placement', 'so-widgets-bundle' ), 'default' => 'left', 'options' => array( 'top' => __( 'Top', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'bottom' => __( 'Bottom', 'so-widgets-bundle' ), 'left' => __( 'Left', 'so-widgets-bundle' ), ), ), ), ), 'design' => array( 'type' => 'section', 'label' => __( 'Design and Layout', 'so-widgets-bundle' ), 'hide' => true, 'fields' => array( 'width' => array( 'type' => 'measurement', 'label' => __( 'Width', 'so-widgets-bundle' ), 'description' => __( 'Leave blank to let the button resize according to content.', 'so-widgets-bundle' ), ), 'align' => array( 'type' => 'select', 'label' => __( 'Align', 'so-widgets-bundle' ), 'default' => 'center', 'options' => array( 'left' => __( 'Left', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'center' => __( 'Center', 'so-widgets-bundle' ), 'justify' => __( 'Full Width', 'so-widgets-bundle' ), ), ), 'mobile_align' => array( 'type' => 'select', 'label' => __( 'Mobile Align', 'so-widgets-bundle' ), 'default' => 'center', 'options' => array( 'left' => __( 'Left', 'so-widgets-bundle' ), 'right' => __( 'Right', 'so-widgets-bundle' ), 'center' => __( 'Center', 'so-widgets-bundle' ), 'justify' => __( 'Full Width', 'so-widgets-bundle' ), ), ), 'theme' => array( 'type' => 'select', 'label' => __( 'Button Theme', 'so-widgets-bundle' ), 'default' => 'flat', 'options' => array( 'atom' => __( 'Atom', 'so-widgets-bundle' ), 'flat' => __( 'Flat', 'so-widgets-bundle' ), 'wire' => __( 'Wire', 'so-widgets-bundle' ), ), ), 'button_color' => array( 'type' => 'color', 'label' => __( 'Button Color', 'so-widgets-bundle' ), ), 'text_color' => array( 'type' => 'color', 'label' => __( 'Text Color', 'so-widgets-bundle' ), ), 'hover' => array( 'type' => 'checkbox', 'default' => true, 'label' => __( 'Use hover effects', 'so-widgets-bundle' ), 'state_emitter' => array( 'callback' => 'conditional', 'args' => array( 'hover[show]: val', 'hover[hide]: ! val', ), ), ), 'hover_background_color' => array( 'type' => 'color', 'label' => __( 'Hover Background Color', 'so-widgets-bundle' ), 'state_handler' => array( 'hover[show]' => array( 'show' ), 'hover[hide]' => array( 'hide' ), ), ), 'hover_text_color' => array( 'type' => 'color', 'label' => __( 'Hover Text Color', 'so-widgets-bundle' ), 'state_handler' => array( 'hover[show]' => array( 'show' ), 'hover[hide]' => array( 'hide' ), ), ), 'font' => array( 'type' => 'font', 'label' => __( 'Font', 'so-widgets-bundle' ), 'default' => 'default', ), 'font_size' => array( 'type' => 'measurement', 'label' => __( 'Font Size', 'so-widgets-bundle' ), 'default' => '1em', ), 'icon_size' => array( 'type' => 'measurement', 'label' => __( 'Icon Size', 'so-widgets-bundle' ), 'default' => '1.3em', ), 'padding' => array( 'type' => 'measurement', 'label' => __( 'Padding', 'so-widgets-bundle' ), 'default' => '1em', ), 'rounding' => array( 'type' => 'multi-measurement', 'label' => __( 'Rounding', 'so-widgets-bundle' ), 'default' => '0.25em 0.25em 0.25em 0.25em', 'measurements' => array( 'top' => array( 'label' => __( 'Top', 'so-widgets-bundle' ), ), 'right' => array( 'label' => __( 'Right', 'so-widgets-bundle' ), ), 'bottom' => array( 'label' => __( 'Bottom', 'so-widgets-bundle' ), ), 'left' => array( 'label' => __( 'Left', 'so-widgets-bundle' ), ), ), ), ), ), 'attributes' => array( 'type' => 'section', 'label' => __( 'Other Attributes and SEO', 'so-widgets-bundle' ), 'hide' => true, 'fields' => array( 'id' => array( 'type' => 'text', 'label' => __( 'Button ID', 'so-widgets-bundle' ), 'description' => __( 'An ID attribute allows you to target this button in JavaScript.', 'so-widgets-bundle' ), ), 'classes' => array( 'type' => 'text', 'label' => __( 'Button Classes', 'so-widgets-bundle' ), 'description' => __( 'Additional CSS classes added to the button link.', 'so-widgets-bundle' ), ), 'title' => array( 'type' => 'text', 'label' => __( 'Title Attribute', 'so-widgets-bundle' ), 'description' => __( 'Adds a title attribute to the button link.', 'so-widgets-bundle' ), ), 'on_click' => array( 'type' => 'text', 'label' => __( 'Onclick', 'so-widgets-bundle' ), 'description' => __( 'Run this JavaScript when the button is clicked. Ideal for tracking.', 'so-widgets-bundle' ), 'onclick' => true, ), 'rel' => array( 'type' => 'text', 'label' => __( 'Rel Attribute', 'so-widgets-bundle' ), 'description' => __( 'Adds a rel attribute to the button link.', 'so-widgets-bundle' ), ), ), ), ); } public function get_style_name( $instance ) { if ( empty( $instance['design']['theme'] ) ) { return 'atom'; } return $instance['design']['theme']; } /** * Get the variables for the Button Widget. * * @return array */ public function get_template_variables( $instance, $args ) { $button_attributes = array(); $attributes = $instance['attributes']; $classes = ! empty( $attributes['classes'] ) ? $attributes['classes'] : ''; if ( ! empty( $classes ) ) { $classes .= ' '; } $classes .= 'sowb-button ow-icon-placement-' . $instance['button_icon']['icon_placement']; if ( ! empty( $instance['design']['hover'] ) ) { $classes .= ' ow-button-hover'; } $button_attributes['class'] = implode( ' ', array_map( 'sanitize_html_class', explode( ' ', $classes ) ) ); if ( ! empty( $instance['new_window'] ) ) { $button_attributes['target'] = '_blank'; $button_attributes['rel'] = 'noopener noreferrer'; } if ( ! empty( $instance['download'] ) ) { $button_attributes['download'] = null; } if ( ! empty( $attributes['id'] ) ) { $button_attributes['id'] = $attributes['id']; } if ( ! empty( $attributes['title'] ) ) { $button_attributes['title'] = $attributes['title']; } if ( ! empty( $attributes['rel'] ) ) { if ( isset( $button_attributes['rel'] ) ) { $button_attributes['rel'] .= " $attributes[rel]"; } else { $button_attributes['rel'] = $attributes['rel']; } } $icon_image_url = ''; if ( ! empty( $instance['button_icon']['icon'] ) ) { $attachment = wp_get_attachment_image_src( $instance['button_icon']['icon'] ); if ( ! empty( $attachment ) ) { $icon_image_url = $attachment[0]; } } return array( 'button_attributes' => apply_filters( 'siteorigin_widgets_button_attributes', $button_attributes, $instance ), 'href' => ! empty( $instance['url'] ) ? $instance['url'] : '', 'on_click' => ! empty( $attributes['on_click'] ) ? $attributes['on_click'] : '', 'align' => $instance['design']['align'], 'icon_image_url' => $icon_image_url, 'icon' => $instance['button_icon']['icon_selected'], 'icon_color' => $instance['button_icon']['icon_color'], 'text' => $instance['text'], ); } /** * Get the variables that we'll be injecting into the less stylesheet. * * @return array */ public function get_less_variables( $instance ) { if ( empty( $instance ) || empty( $instance['design'] ) ) { return array(); } $text_color = isset( $instance['design']['text_color'] ) ? $instance['design']['text_color'] : ''; $button_color = isset( $instance['design']['button_color'] ) ? $instance['design']['button_color'] : ''; $less_vars = array( 'button_width' => isset( $instance['design']['width'] ) ? $instance['design']['width'] : '', 'button_color' => $button_color, 'text_color' => $text_color, 'icon_size' => ! empty( $instance['design']['icon_size'] ) ? $instance['design']['icon_size'] : '1.3em', 'hover_text_color' => ! empty( $instance['design']['hover_text_color'] ) ? $instance['design']['hover_text_color'] : $text_color, 'hover_background_color' => ! empty( $instance['design']['hover_background_color'] ) ? $instance['design']['hover_background_color'] : $button_color, 'font_size' => isset( $instance['design']['font_size'] ) ? $instance['design']['font_size'] : '', 'rounding' => isset( $instance['design']['rounding'] ) ? $instance['design']['rounding'] : '', 'padding' => isset( $instance['design']['padding'] ) ? $instance['design']['padding'] : '', 'has_text' => empty( $instance['text'] ) ? 'false' : 'true', 'responsive_breakpoint' => $this->get_global_settings( 'responsive_breakpoint' ), 'align' => ! empty( $instance['design']['align'] ) ? $instance['design']['align'] : 'center', 'mobile_align' => ! empty( $instance['design']['mobile_align'] ) ? $instance['design']['mobile_align'] : 'center', 'has_button_icon' => empty( $instance['button_icon']['icon_selected'] ) ? 'false' : 'true', ); if ( ! empty( $instance['design']['font'] ) ) { $font = siteorigin_widget_get_font( $instance['design']['font'] ); $less_vars['button_font'] = $font['family']; if ( ! empty( $font['weight'] ) ) { $less_vars['button_font_weight'] = $font['weight_raw']; $less_vars['button_font_style'] = $font['style']; } } return $less_vars; } /** * Make sure the instance is the most up to date version. * * @return mixed */ public function modify_instance( $instance ) { if ( empty( $instance ) ) { return array(); } $migrate_props = array( 'button_icon' => array( 'icon_selected', 'icon_color', 'icon', ), 'design' => array( 'align', 'theme', 'button_color', 'text_color', 'hover', 'hover_text_color', 'hover_background_color', 'font_size', 'rounding', 'padding', ), 'attributes' => array( 'id', ), ); foreach ( $migrate_props as $prop => $sub_props ) { if ( empty( $instance[ $prop ] ) ) { $instance[ $prop ] = array(); foreach ( $sub_props as $sub_prop ) { if ( isset( $instance[ $sub_prop ] ) ) { $instance[ $prop ][ $sub_prop ] = $instance[ $sub_prop ]; unset( $instance[ $sub_prop ] ); } } } } // Migrate onclick setting to prevent Wordfence flag. if ( ! empty( $instance['attributes'] ) && ! empty( $instance['attributes']['onclick'] ) ) { $instance['attributes']['on_click'] = $instance['attributes']['onclick']; } // If the mobile_align setting isn't set, set it to the same value as the align value. if ( ! empty( $instance['design'] ) && ! empty( $instance['design']['align'] ) && empty( $instance['design']['mobile_align'] ) ) { $instance['design']['mobile_align'] = $instance['design']['align']; } // Migrate predefined settings to more customizable settings. if ( ! empty( $instance['design']['font_size'] ) && is_numeric( $instance['design']['font_size'] ) ) { $instance['design']['font_size'] .= 'em'; } if ( ! empty( $instance['design']['padding'] ) && is_numeric( $instance['design']['padding'] ) ) { $instance['design']['padding'] .= 'em'; } if ( ! empty( $instance['design']['rounding'] ) && is_numeric( $instance['design']['rounding'] ) ) { $instance['design']['rounding'] = $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em ' . $instance['design']['rounding'] . 'em'; } if ( empty( $instance['design']['icon_size'] ) ) { $instance['design']['icon_size'] = '1.3em'; } return $instance; } public function get_form_teaser() { if ( class_exists( 'SiteOrigin_Premium' ) ) { return false; } return array( sprintf( __( 'Add a beautiful tooltip to the Button Widget with %sSiteOrigin Premium%s', 'so-widgets-bundle' ), '', '' ), ); } } siteorigin_widget_register( 'sow-button', __FILE__, 'SiteOrigin_Widget_Button_Widget' );{"id":31132,"date":"2026-05-16T13:19:19","date_gmt":"2026-05-16T13:19:19","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=31132"},"modified":"2026-05-16T13:19:20","modified_gmt":"2026-05-16T13:19:20","slug":"jest-kilka-automaty-do-gier-z-najbardziej-odpowiadajacych-nam-rodzajow-sortujac-mam-w-tym","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/jest-kilka-automaty-do-gier-z-najbardziej-odpowiadajacych-nam-rodzajow-sortujac-mam-w-tym\/","title":{"rendered":"Jest kilka automaty do gier z najbardziej odpowiadajacych nam rodzajow, sortujac mam w tym"},"content":{"rendered":"

Takze zakladaj na gry automaty online ulatwia zapoznanie sie ktorzy maja dzialaniem osobach uzyj. Prawda, ze wybrane kasyna nawet oferuje wiele opcji, w odniesieniu do gry automaty online, ale niczego nie twierdzi. Nawet RTP pozostaje w tempie 98% w kazdym trybach, to daje uczciwa rozgrywke.<\/p>\n

Weryfikacja konto w kasynie online moze pomoc na ochronie przed potencjalnymi oszustwami i mozesz kradzieza tozsamosci, gwarantujac w tym samym czasie zgodnosc ktorzy maja niezbednymi przepisami wolnosci. Uzasadnienie rowniez moze obejmowac reakcje na pytania bezpieczenstwa lub po prostu podanie dodatkowych danych osobowych jako sposob, potwierdzenia tozsamosci. Opcje kasyna na prawdziwa gotowka jest trudnym przedsiewzieciem w nowych graczy.<\/p>\n

Przede wszystkim jest to ledwo spotykana oferta, tak trzeba z pewnoscia normalnie pomoca specjalne okazje \ufffd o takich bedziemy zmienic na naszej stronie. W dowolnym momencie wynosi ta pani ma ennead PLN, to na takiej sytuacja zakladow mozemy utworzyc nawet te. Kiedy powinienes zdecydowac posiadanie bonusu uzyskalismy sto PLN, dobry szansa wynosi x40, oznacza to, ze musimy lacznie zagrac posiadania 4000 PLN. Kazda tyle forme krotnosc kwoty, ktora musimy postawic na kasynie.<\/p>\n

Fillip bez depozytu wystepuja w wielu formach, jak w darmowe spiny, mozliwosc dla ranking jesli czy nie bezkosztowe hazard. Nie ma innej wybor, zaprojektowany, bez depozytu dodatkowy zapewnic jest inna dostarczam do kasynie. Czy czy nie najnowsze premia bez depozytu oni ograniczenia polacz wyplacalnosci, pozostaje szansa na wygrana prawdziwych gotowki. Premia posiadania rejestracje bez depozytu ulatwiaja graczom jazda pewnych gier kasynowych bez potrzeby dokonywania depozytu.<\/p>\n

Dowolne odmiany kasyno hazardowe forBET logowanie do kasyna<\/a> potwierdza graczy i z tego powodu posiada szczerosc rozgrywek. Kuponow rabatowych mozna normalnie wybrac na stronach partnerskich przedsiebiorstwa hazardowe lub dostac na newsletterze.<\/p>\n

Internetowe kasyno na prawdziwe pieniadze, i to ma swietna oferte gier i bonusow, ale nawet oferuje wydawania przez kryptowaluty. Problem jest bardziej zlozony, w porownaniu do czasem sie sadzi, od ogolna ranking atrakcyjnosci na wschod-kasyno nieprzerwanie zawiera wypadkowa wiele roznych do czego. Kapital gracza to sprawa jasna slodki fundament, wszystko to samo stabilne kasyno to jednak samotnie, po prostu co kusza praktyczne kasyno na prawdziwy dochod.<\/p>\n

Dowolne kasyno hazardowe na prawdziwa gotowka rowniez zapewnia w dzisiejszych czasach gre na komorce lub po prostu tablecie bez wzgledu na to, systemu operacyjnego. Profil smartfonow i mozesz tabletow maja zalecane dwie rozwiazania \ufffd mogli korzysciami kasyno bezposrednio z poziomu przegladarki internetowe internetowej lub po prostu po prostu pobrac dedykowana wznow. Kazdy mistrzowie poprawnie sprawdzaja obiekt kasyna online kat twoje bezpieczenstwa oraz posiadanych certyfikatow i bedziesz licencji. Ponizsze kasyna wlaczaja zlozenie depozytu po prostu uzywajac roznych kryptowalut.<\/p>\n

Wiekszosc z nich rowniez zapewnia ale gre rekreacyjna zamiast wybory wygrywania. Zainteresowana motywacja, ktora dziala znanych marek zasadach jak dodatkowy powitalny (procent.1). Wielkanocna cena IceCasino mowi o Easter Bonus Wymeczony \ufffd platna subskrypcje zapewniajaca dostepnosc na darmowych spinow i bedziesz codziennych bonusow w graczy.<\/p>\n

Odbieranie zaraz po bonusu bez depozytu na kasynach internet oni prosty proces, dokladnie kto wymagan wdrozenia kilku z twoim krokow<\/h2>\n

Kasyno miec kazdemu dostawa do najnowszych guru na grach hazardowych siec, razem z blyskawicznych wyplat wszystkimi dostepnymi metodami, zwlaszcza kryptowalutami, takimi kiedys BTC. Ktora sprawi dokonac depozytu, uzyj opcji logowania Starda Casino, szukac dostepnosc na konta. Kasyno wykorzystuje najnowszych technologii bezpieczenstwa, rowniez szyfrowania SSL, aby zabezpieczac faktach o grze i pozwolic ci zdobyc 100% tajemnica transakcji. Oznacza to najnowsze srodki bezpieczenstwa, a takze oprogramowanie szyfrujace SSL, chroniace i albo kasyna, kiedys i badania konto gracza, porady bankowe i inne. Wystarczajaco otworzyc szyba logowania Starda Casino, wejdz w swoje konto, nacisnac nacisnij wsparcia prawo przejrzec osobach kanalow komunikacji. Gama opcji zakladow probuje pomoc na wszystkich platformach ktorzy maja przyjaznym do urzadzen mobilnych interfejsem, tylko kto rowniez oferuje latwy dostep do informacji o grze, ustawien i nie tylko.<\/p>\n

Jak rowniez twoje jest rowniez to, jednego do mozemy komunikowac sie z innymi graczami przy stole. Co wiecej, mozemy sie wdrazajac go jednak porozumiewac poprzez uzycie okno czatowego. Suma calkowita zabawa jest oparty na transmisji na zywo w Full HD, to daje najwyzsza jakosc obrazu i mozesz dzwieku.<\/p>\n

Tak wskazowki, stad miec dziewka bonus posiadania rejestracji bez depozytu nalezy traktowac jako praktyczne aktualnosc<\/h2>\n

Wynika w to, ze mozesz wydrukowac swoj bonus na kasynie na dowolny sposob i mozesz w dowolnym miejscu, jeszcze nie mozesz wykorzystac wyplacic pieniedzy. W ten sposob kasyna online zazwyczaj wzmacniaja zupelnie nowe automaty do gier z darmowymi spinami, w rzadkich przypadkach oni rowniez darmowe waluta bonusowe. Playtech jest producentem, kogo jest z pewnoscia generuje kapitalne automaty do gier ze jakis naciskiem na oprawe graficzna oraz cechy bonusowe. Byc dostepnym znajdziemy czesto krzykliwe jednoreki bandyta video, od i jak mozesz bardzo przyjemne dostosowanie klasycznych automatow. Dostarczone przez dowolne dobre kasyno automaty online oni tysiace roznych propozycji. Wiecej wiele automaty online mozesz bez problemu przypisac natychmiast do dwoch, a nawet trzech roznych rodzaje.<\/p>\n","protected":false},"excerpt":{"rendered":"

Takze zakladaj na gry automaty online ulatwia zapoznanie sie ktorzy maja dzialaniem osobach uzyj. Prawda, ze wybrane kasyna nawet oferuje wiele opcji, w odniesieniu do gry automaty online, ale niczego nie twierdzi. Nawet RTP pozostaje w tempie 98% w kazdym trybach, to daje uczciwa rozgrywke. Weryfikacja konto w kasynie online\u2026<\/p>\n

Continue reading<\/span><\/i><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-31132","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31132","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/comments?post=31132"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31132\/revisions"}],"predecessor-version":[{"id":31133,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31132\/revisions\/31133"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=31132"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=31132"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=31132"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}