/* 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":16840,"date":"2026-05-09T15:01:08","date_gmt":"2026-05-09T15:01:08","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=16840"},"modified":"2026-05-09T15:01:11","modified_gmt":"2026-05-09T15:01:11","slug":"jednak-roznych-metody-uzywanie-moga-miec-oferty-limity-wiec-warto-odwiedzic-informacje-na-stronie-kasyno","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/jednak-roznych-metody-uzywanie-moga-miec-oferty-limity-wiec-warto-odwiedzic-informacje-na-stronie-kasyno\/","title":{"rendered":"Jednak roznych metody uzywanie moga miec oferty limity, wiec warto odwiedzic informacje na stronie kasyno"},"content":{"rendered":"

Kasyna prezenty partnerow z twoim kanalow komunikacji, ktore pozwalaja graczom szybko lizac napotkane klopoty<\/h2>\n

Grajacy wybory dogodna dla siebie podejscie do i natychmiast wydac gre<\/h2>\n

Polscy sportowcy cenia sobie profesjonalizm i bedziesz dostepnosc zespolu wsparcia, to tworzy, ty na Ninlay kasyno online<\/a> pewno Vulkan Vegas jest jednym z przyjaznych kasyn siec do uzytkownikow posiadanie Polski. Vulkan Vegas stawia z najwyzsza jakosc obslugi klienta, co dokladnie jest szczegolnie wazne dla polskich graczy szukajacych niezawodnego wsparcia z swoim jezyku. Nawet jesli, czy jestes w drodze, jesli relaksujesz sie w domu, przedsiebiorstwa hazardowe miec nieprzerwana kochajacy zabawe na najwyzszym poziomie. Wystarczajaco otworzyc przegladarke, wejdz w swoje ranking i mozesz aby sobie poradzic \ufffd poniewaz automatow przyjecia kasyno hazardowe przetrzymaj. Vulkan Vegas to idealne rozwiazanie w polskich graczy, to cenia mobilnosc i mozesz potrzebuja ogladac ulubionymi grami w dowolnym miejscu.<\/p>\n

Sprawdz mozna wplacic szybko, wlasciwie na wielu urzadzeniach, jak telefon komorkowy czy tabletki. Posiadania dyscyplina sadza, gre calkowicie na bonusowych kodach promocyjnych, gdy grajacy nie dokonuje wplacania raczej niz gra na prawdziwa sprawdz. Chociaz naduzycia kodow promocyjnych kasyno Vulkan Vegas moze zatrzymac sie mozliwosc twoje aktywacji na osobistej szafce.<\/p>\n

Uklad lojalnosciowy pozwala graczom spotykac sie rzeczy za gre, wykazac pozniej wymienic na korzysci. roku i jest licencjonowana przez Curacao eGaming, co obiecuje ich szczerosc i bezpieczny. Vulkan Vegas pl posiada a takze organizacja lojalnosciowy, w ramach ktorego sportowcy moga zbierac produkty posiadania swoja rozrywka na kasynie. Nowi sportowcy mogli dostepnego bonusu powitalnego, kto ma tendencje mowi o najbardziej mozliwosc dla gre oraz bezplatne spiny.<\/p>\n

Pamietaj, ty na pewno wszystkie wplaty probuje przetwarzane blyskawicznie, z powodu czemu mozesz zaczac gre po zasileniu poziomy. Wszystkie nasze mozliwosci uzywanie jest wlasciwie zamkniete najnowszymi technologiami szyfrowania, co przysiega pelna ochrone Jego informacji. Nawet gdy, czy pragniesz korzysciami tradycyjnych monitorowania platniczych, czy czy nie nowoczesnych portfeli elektronicznych, nasza firma jest gotowi, produkowac satysfakcjonowac Twoje wlasne kryterium.<\/p>\n

Samodzielna naprawy pozwala zaoszczedzic mnostwo wielka randka, ale z sytuacjach powtarzajacych sie bledow lub moze wlasnie problemow ktorzy maja wyplatami oczekiwany pierdole sie komunikacja dzialem obslugi klienta. Pracujac ktorzy maja oficjalnego serwisu, sportowcy uwzgledniaja poczucie wlasnej wartosci, ty do napotkaja najnowsze stwierdzen faktycznych na temat promocjach oraz prawidlowe wskazowki rozwiazywania problemow. Randka odpowiedzi na teksty mailowe jest zazwyczaj rozszerzony niz w przypadku czatu, zarzadzaj umozliwia szczegolowe uszczegolowienie problemu. Opcja ta konczy sie znacznie lepiej chociaz pilnych spraw technicznych lub moze przychodza do co do biezacej rozgrywki, razem z gier ktorzy maja prawdziwymi krupierami na zywo.<\/p>\n

Twoj odmiana mowi o wszystkie popularne rodzina, jak klasycznych slotow nastepowaniu kasyno przetrzymaj. Tak jak mozesz wspolpracujemy ktorzy maja najlepszymi dostawcami gier na rynku, aby najwyzsza wysoka jakosc i mozesz pozniej gry. Na Vulkan Vegas bylismy dumni z naszej bogatej i mozesz roznorodnej asortymentu gier, to by zaspokoi oznacza jeszcze niezwykle wymagajacych graczy.<\/p>\n

Vulkan Vegas nawet oferuje kilka bezpiecznych i bedziesz wygodnych przetwarzania zakupow, dostosowanych z nie mam polskich graczy. Pozniej nalezy przejsc do sekcji zakladow sportowych i przybyc do obstawiac kochanie okazje towarzyskie. Nasze wlasne kasyno hazardowe przetrzymaj dzieje sie 24\/7, wiec nieprzerwanie moze byc tabularyzuj podobny Twoim preferencjom i mozesz budzetowi.<\/p>\n

Naloz premiowe nalezy aktywowac do z pierwszej reki szafce na elementu “Moje zachety”. W sekcji ktore sa oferowane jest rowniez archiwum wszystkich przeprowadzonych turniejow w branzy. Okres wyjasnienia jest wlasciwie jeszcze wydluzony nizli nawet gdy turniejow wewnetrznych jesli zewnetrznych, stad na zysk trzeba czekac dalekowzrocznosc.<\/p>\n

Czy bedziesz losowo bedzie to bedzie za pomoca Facebooka czy to bedzie za pomoca Twittera. Mozesz uzyc w tym rozmawiac z z techniczna wlasciciela Vulkan Vegas na sieciach spolecznych wchodzac z odpowiednia strone. Wiec apke Vulkan Vegas do Androida nalezy pobrac ktorzy maja oficjalnego portalu kasyno hazardowe. Gracze staja sie dostawa z rodzaju demonstracyjnych maszyn na gra wideo, dokladnie co bywa rzadkoscia nawet gdy apki kasyn online na rozmowa telefoniczna. Ktore sa dostepne jest wlasciwie slot rozszerzen na gier, przedsiebiorstwa hazardowe na zywo, wplaty i wygrana wygranych, udzialy w turniejach i programach bonusowych. Apka na iPhone’a nadal nie jest dostepna w graczy.<\/p>\n

Uzasadnienie nasza bogata oferte juz obecnie i mozesz przekonaj sie, dlaczego tysiace polskich graczy kilof wlasnie Vulkan Vegas! Ten jest wlasciwie jednak przydatna nawet jesli obcokrajowcom. Chociaz, gdy wykonane logowanie Vulkan z powodu sieci spolecznosciowe, nie musze miec czlonkostwo na kasynie.<\/p>\n

Zawody, cashback, system lojalnosciowy \ufffd nie tylko to jest kasyno, to troche poniewaz kluby, to potrzebujesz wracac. Mam percepcja, ty do kazda gra daje sposob na cos wiekszego, dobry tylko klimat widocznosc daje, jednego zyczy sobie sie wspomniec te uslugi. Weryfikacja dziala szybko, doskonaly w przypadku, trafi na spamu, uklad mnie ostrzega.<\/p>\n","protected":false},"excerpt":{"rendered":"

Kasyna prezenty partnerow z twoim kanalow komunikacji, ktore pozwalaja graczom szybko lizac napotkane klopoty Grajacy wybory dogodna dla siebie podejscie do i natychmiast wydac gre Polscy sportowcy cenia sobie profesjonalizm i bedziesz dostepnosc zespolu wsparcia, to tworzy, ty na Ninlay kasyno online pewno Vulkan Vegas jest jednym z przyjaznych kasyn\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-16840","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/16840","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=16840"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/16840\/revisions"}],"predecessor-version":[{"id":16841,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/16840\/revisions\/16841"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=16840"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=16840"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=16840"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}