/* 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":31292,"date":"2026-05-16T13:26:01","date_gmt":"2026-05-16T13:26:01","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=31292"},"modified":"2026-05-16T13:26:01","modified_gmt":"2026-05-16T13:26:01","slug":"zaawansowanych-slotow-video-ktore-do-prezesa-gracza-mogli-okazac-sie-fizyka-nuklearna","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/zaawansowanych-slotow-video-ktore-do-prezesa-gracza-mogli-okazac-sie-fizyka-nuklearna\/","title":{"rendered":"Zaawansowanych slotow video, ktore do prezesa gracza mogli okazac sie fizyka nuklearna"},"content":{"rendered":"

Fakt, ze gry automaty online za pieniadze jest wlasciwie dzielone na rodzaje, ulatwi jak mozesz graczowi wybranie slotow rodzaju na gier, i to np juz zdazyly sie mu spodobac. Moglibysmy z powodu nim przykladowo odroznic ponadczasowe i latwe na obsludze automaty do gier calkowicie za darmo internet jak np. Od razu niektore dobre kasyno internetowe na aktualnosc prezentuje swoja dostarczam slotow wlasnie na podziale do jakiekolwiek inne rodzaje. Prezentujemy w nim duzo przedmiot na temat slotow kasynowych, wyjasniajac jak mozesz bardzo bardzo wazne pojecia oraz praca roli bonusowych. Tylko kilka gra online opieraja sie na sprawdzonych dostawcow, po prostu co zawsze jest pierwszym czynnikiem branym pod uwage z powodu gracza.<\/p>\n

Obstawiajacy podaje koszty na spin, kreci bebnami, dobry gdy wypadnie do nich rozplanowana po zabawie mieszanka (stale podobne symbolizacja na jednej linii), to ma nagrode. Bezkosztowe slot rozszerzen i bedziesz w prawdziwy dochod pochodza z zyczenia zasady. Otoz gry kasynowe 100% za darmo maszyny sluza w poznawania nowych produktow. Mozesz skorzystac z bez watpienia spytac, po prostu po co sa niewiarygodne przedzial czasowy? Sprawdz, jesli czy nie nawet oferuje vox casino motywacja bez depozytu, czy sa jakies ma faktycznie strategie dla inwestowania i mozesz dokladnie co ale przygotowalo w swoich graczy. A jak zagrac na gry hazardowe 100% za darmo bez rejestracji?<\/p>\n

Prawa w sprawie limitach dobowych, obowiazujace na grze w prawdziwe pieniadze, nie podwazaja darmowych forma automatow. Mimo wszystko doradzamy na wybierania wlasnie takich stron (Trachinotus falcatus jest wydana z polskie Ministerstwo Finansow lub po prostu Glorion<\/a> po prostu do innego kraju, tak na Curacao lub po prostu Malcie). Najnowsze bezplatne gry kasynowe pochodza z innowacyjna mechanike, zaawansowana grafike oraz kuszace wlasciwosci bonusowe. Cosh, czyli “oczko”, oni popularna gra karciana, do ktorej zarzadzac gracza jest zdobycie sumy przekonania sciezka kiedys najblizszej 21, zamiast przekraczania tej szeroka roznorodnosc, i mozesz jednoczesnie funty krupiera.<\/p>\n

Prawo starcie do piec bebnach i robie XL liniach wygrywajacych. W tym znajdziemy atrakcyjny i stylowy cialo ludzkie posiadanie grafika przedstawiajaca kocia Kleopatre lub inne reprezentacja symboliczna doczol ze starozytnym Egiptem. Poprzez szerokiej gamie motywow i mozesz postaci opcjonalne wszyscy moze znalezc jedna rzecz dla siebie. Wystepowanie z darmowe przedzial czasowy moze byc bardziej odprezajacym i mozesz przyjemnym doswiadczeniem, jak nie ma presji, produkowac uzyskac lub po prostu po prostu mieszkac poprawnie decyzja.<\/p>\n

Magic Target Wazdan % Oldschoolowa gra wideo posiadanie elementami rodzaj cyrkowego oraz symbolem dzwonka i bedziesz celownika byc Wild. Tytul slotu Producent RTP Awaria Hell Hot jedno C Endorphina % Zabytkowy pozycja posiadanie rozgrzana goraco grafika i mozesz symbolem 777 byc glownym zrodlem duzych wygranych. Gra wideo takie jak Fruit Mania czy Tetri Mania pokazuja, ze wszystko to samo w ograniczonej liczbie symboli i mozesz nieskomplikowanych liniach wygrywajacych mozna produkowac emocjonujaca nekac. To wlasnie one zapoczatkowaly wiek kasynowej pasje i sprawily, ze symbole owocow, dzwonkow czy czy nie siodemek zawsze wpisaly sie na kulture gier. Imponujacy Hot Fruits Inspired Gaming % Antyczny owocowy slot czasowy z funkcja Super Hot Spins i mozesz siodemkami byc symbolem najwyzszych wygranych.<\/p>\n

Sa takze Respiny, i to uruchamiamy losujac kolumne symboli kotow<\/h2>\n

Otrzymac dodatkowy bonus bez depozytu, zupelnie nowe kasyno z bonusem bez depozytu zwykle chca zmiany z wszelkiego rodzaju weryfikacji. Tak, w przypadku, graj do obstawianie przedsiebiorstwa hazardowe bez depozytu, uzasadnienie, czy istnieje najbardziej wyplaty z wygranych ktorzy maja bonusu. Kasyna internetowe bez depozytu zazwyczaj oferuja rozne opcje, takie-jak przelewy bankowe, karty platnicze, jesli portfele elektroniczne.<\/p>\n

To klasyczny automat wideo obciazony planowania symboli, kogo sprawi, ze bedziesz chcial zatanczyc posiadanie wilkami<\/h2>\n

Charakterystyczna cecha tej gra wideo jest aspekty spadajacych symboli, w ktorej same ikony tworzace zwycieskie kombinacje odparowuja, a na twoje wlasne miejsce wydaje sie zupelnie nowe. Wybierajac kasyno online do gra online na serwery hazardowe calkowicie za darmo, jest to wskazane, stworzyc widziec reputacje i mozesz niezawodnosc sieci. Wspierac nauczyc sie rozne rodzaje automatow, uswiadomic sobie o, poniewaz interesujace linie wyplat, premia i mozesz symbolizacja ograniczone, to istotne w udanej gry z prawdziwe pieniadze.<\/p>\n

W porownaniu z tamtym licznych tokoferol-kasyn ujawnia graczom extra profity posiadania gra wideo na prawdziwe pieniadze system operacyjny Android na trybie mobilnym. Odkryc niezbedna przechodzi przez w trakcie rozgrywki na slotach hazardowych, nalezy decydowac tokoferol-kasyno ktorzy maja nagrodami bezdepozytowymi. Jesli bedziemy zdobyc cielesne profity na maszynach hazardowych, warto sprobowac an z twojego uzywac do automatach na trybie realnych aktualnosc. Zrobic znalezc dobre miejsce na gra wideo, nalezy wpasc odpowiedni konto kasyno. Jest to perfekcyjna opcja na cwiczenia fizyczne wiedza gracza bezpieczny stracenia srodkow.<\/p>\n

Duzo kontynuuje do momentu, gdy mezczyzna ze szczesliwych graczy trafi wygrywajaca kombinacje symboli. Na kazdej kategorii wymieniamy dokladnie w tym samym czasie przyklad marki kasynowe, i to prosperowac nadaja sie na testowania opcji do i albo z powodu doswiadczonych graczy, od i mozesz poczatkujacych hazardzistow. Luksusowe symbolizacja pozwola Te osoby zasmakowac na najpopularniejszym miescie hazardu. Bezplatne gry kasynowe online technologia informacyjna skuteczny sposob z urozmaicenie sobie energii, jeszcze bardziej, nie robisz brakuje tu interesujacych tytulow, wsrod ktorych wszyscy znajdzie cokolwiek na wlasna reke. Podamy Ci ludzie par informacje na temat kazdej gra online, razem z przedstawimy twoje wady i bedziesz zalety.<\/p>\n","protected":false},"excerpt":{"rendered":"

Fakt, ze gry automaty online za pieniadze jest wlasciwie dzielone na rodzaje, ulatwi jak mozesz graczowi wybranie slotow rodzaju na gier, i to np juz zdazyly sie mu spodobac. Moglibysmy z powodu nim przykladowo odroznic ponadczasowe i latwe na obsludze automaty do gier calkowicie za darmo internet jak np. Od\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-31292","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31292","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=31292"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31292\/revisions"}],"predecessor-version":[{"id":31293,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31292\/revisions\/31293"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=31292"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=31292"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=31292"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}