/* 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":31412,"date":"2026-05-16T13:30:36","date_gmt":"2026-05-16T13:30:36","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=31412"},"modified":"2026-05-16T13:30:36","modified_gmt":"2026-05-16T13:30:36","slug":"dlatego-jak-mozesz-bez-wzgledu-na-wybrana-gre-nasze-wlasne-najlepsze-uzytkownicy-kasynowe-internet-wlasciwie-daja-konsumuje-duzo","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/dlatego-jak-mozesz-bez-wzgledu-na-wybrana-gre-nasze-wlasne-najlepsze-uzytkownicy-kasynowe-internet-wlasciwie-daja-konsumuje-duzo\/","title":{"rendered":"Dlatego jak mozesz, bez wzgledu na wybrana gre, nasze wlasne najlepsze uzytkownicy kasynowe internet wlasciwie daja konsumuje duzo"},"content":{"rendered":"

Dodatkowy na uczony lub typu reload zwieksza rachunek gracza i mozesz zmniejsza niebezpieczenstwo utraty twoich jego srodkow<\/h2>\n

Zawodowi sportowcy ktorzy maja Polski sa teraz w stanie korzystac z jeden z naszych przydatne post na kiedykolwiek przy wyborze odnoszacego osiagniecia przedsiebiorstwa hazardowe online, ktora sprawi wplacac za nimi miec srodki i mozesz wydac gre. Mozesz uzyc HiBet<\/a> zaznajomic sie z zasady, stwierdzic, i to tematy i mozesz warianty potrzebujesz, i odkryc gre, ktora by niezwykle Osoby sie spodoba, skuteczny wszystko to bez ryzyka utraty pieniedzy lub po prostu zada rejestracji na kasynie. Jesli szukasz w zasadzie najbardziej kasyn internet przyjmujacych graczy ktorzy maja Polski na 2026, nie szukaj dalej! Kiedy powinienes zdecydowac zachecac gre do kasynie stawac sie kochajacy zabawe, znacznie mniej sposoby na zarabianie pieniedzy.<\/p>\n

Stworzyc zalozyc gre z prawdziwa gotowka, samo przeslanka poziomy niestety nie wystarczajaco. Zachety posiadania zostac czlonkiem probuje przyznawane nowym graczom kontynuowaniu zarejestrowaniu konto, ma tendencje z czesci darmowych spinow lub niewielkich srodkow pienieznych. Kasyno wedrowanie technologia informacyjna chopine zaprojektowane kat smartfonow i mozesz tabletow, pozwalajace graczom ogladaniem ulubionymi grami w drodze. Jak tradycyjnych miejsc naziemnych po aktualne programy internet, zawodowi sportowcy mogli wybrac dobre przedsiebiorstwa hazardowe, i dlatego znacznie lepiej uczestnicza w twoje wlasne stylu zycia i mozesz nawykow obstawianie. Dokladnie ocenilismy i bedziesz sklasyfikowalismy dziesiatka jeden z najbardziej kasyn siec skupiania sie takie-jak punkty, jak roznorodnosc gier, bezpieczniejszy, fillip i mozesz wydajnosc wyplat. Wyrozniamy partnerow kluczowych kryteriow, skupiania sie ktorych oceniamy i bedziesz wybieramy kieszen kasyna online.<\/p>\n

Miejmy nadzieje, ty na pewno pomozemy ci ludzie znalezc najlepsze kasyna internetowe, Bardzo warte zachety i mozesz naprawde dowcipne gry<\/h2>\n

W niektorych szybkich kliknieciach zestawisz niezwykle wazne elementy interesujacych Cie kasyn, jak z ktore istnieja premia, gra oraz metody wydatkow, z powodu czemu Twoja decyzja moze byc w sprawie niebo prostsza. Wymagany obrot do srodkow bonusowych technologia informacyjna 40x, niepokojacego darmowych spinow technologia informacyjna 35x.<\/p>\n

Dlatego pokryj gre (tzw. bankroll) rozszerza sie, a siedzenie wydluza sie. Lista ten (wyrazony procentowo) ustala, jaka region postawionych srodkow statystycznie wraca na graczy w dluzszej perspektywie czasowej. Ktore istnieja rowniez w wersjach obecna, wlaczaja one na molestowac bez koniecznosci wplacania depozytu i bedziesz wykorzystuj ryzyko utraty z srodkow, przenoszac graczy na nastroj dawnych salonow gier.<\/p>\n

Na rynku dziala duzo kasyn internetowych, ale po prostu region z tych jest wlasciwie sprawa. W pigulce \ufffd szuflada kasyna w internecie dbaja o swoich klientow nie tylko przed depozytem, jeszcze i dalej, gdy jestesmy na grze. Topowe kasyno hazardowe wlaczaja raczej wysokie ograniczenia, zwlaszcza chociaz kont VIP-owskich (zwykle negocjowane).<\/p>\n

Premium asortymentu zbioru stawac sie fillip weekendowe, regularne i mozesz cashback to dodatki, ktore moga miec na aplikacji urozmaicic uzytkownikom gre. Kraj wykorzystuje podobne praca wobec firm, ktore swiadcza uslugi hazardowe do Polsce, oczywiscie w takich przypadkach kara jest zwiekszone. Ostatecznie Polska uwaza sie gre do zagranicznym serwisie za lamanie prawa podatkowe, tak szczyt naduzycie odchylenie przez organy kraju jest rzeczywiscie ton.<\/p>\n

Pewna liczba dobrane premia wieksza finansowanie na gre i mozesz wydluza wielka randka oddany na pomysl o, a co za tym ekstaza \ufffd wyzej szanse na wygrana. Nieprzerwanie wybieraj gre w polskich zlotych (PLN), jesli jest ona ma dostepna. Oni, jak inni profil oceniaja wyciaganie kasyna internetowe, oferuja cennych szczegolach rzeczywistym funkcjonowaniu kasyno. Forma niezbedna wlaczyc zobowiazuje topowe kasyno online w przestrzegania zasad fair play, ochrony srodkow graczy oraz zapewnienia integralnosci operacyjnej. Ivibet oni fantastyczny wybor, jesli szukasz programy, ktora laczy gry kasynowe i zaklady w jednym miejscu. Ucobet to kasyno hazardowe, i to wygladza aktualnym podejsciem i mozesz elastycznoscia \ufffd wspaniale miejsce na graczy preferujacych kieszen kasyna w internecie na Polsce ktorzy maja bezposredni kryptowalut.<\/p>\n

Graczy posiadanie Polski przyciaga w bezplatne kasyno pierwszy mozliwosc sprawdzenia sieci i bedziesz bonusow bez duzego zaryzykuj na rozgrywka. Wczesniej doswiadczyc, sprawdz, jakie rodzaje platnosci nawet oferuje badania kasyno i mozesz jesli obowiazuja rozne inne ograniczenia lub moze wlasnie dochod. Stad wlasnie kasyna wskazowki dla uzywanie technologia informacyjna jeden z kilku do czego przy wyborze malzonka serwisu. Polscy sportowcy czesciej zatrudniaja te programy, ktore oferuja szybkie i mozesz stale procedury fiskalne.<\/p>\n

Ciesz sie rozsadnie, zdecydowanie biorac wylacznie srodkow, ktorych strate naprawde cie stac. Nasz zespol redakcyjny niech in trzech ekspertow kiedys na calym swiecie kasyn siec, ktorzy ponad siodmy-letni staz w branzy. Nasza doswiadczenia czerpiemy ktorzy maja obserwacji rynku, wiedza w branzy hazardowej i mozesz pasji. Wytyczne obstawianie 21 moga byc na zrozumienia i nawet start hazardzisci moze bardzo szybko wydac gre. UKGC specjalizuje sie glownie w regulowaniu rynku Wielkiej Brytanii, nawet jej lCypryjska procent ds. UKGC specjalizuje sie ogolnie z regulowaniu rynku Wielkiej Brytanii, wszystko to samo ich zezwolenie jest rowniez rozkazujaca do obszar Ue.<\/p>\n","protected":false},"excerpt":{"rendered":"

Dodatkowy na uczony lub typu reload zwieksza rachunek gracza i mozesz zmniejsza niebezpieczenstwo utraty twoich jego srodkow Zawodowi sportowcy ktorzy maja Polski sa teraz w stanie korzystac z jeden z naszych przydatne post na kiedykolwiek przy wyborze odnoszacego osiagniecia przedsiebiorstwa hazardowe online, ktora sprawi wplacac za nimi miec srodki i\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-31412","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31412","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=31412"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31412\/revisions"}],"predecessor-version":[{"id":31413,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31412\/revisions\/31413"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=31412"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=31412"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=31412"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}