/* 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":31078,"date":"2026-05-16T13:16:52","date_gmt":"2026-05-16T13:16:52","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=31078"},"modified":"2026-05-16T13:16:52","modified_gmt":"2026-05-16T13:16:52","slug":"w-vulkan-vegas-oferujemy-szeroka-game-wariantow-ruletki-dostosowanych-do-roznych-upodoban-i-bedziesz-poziomow-spotkania","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/w-vulkan-vegas-oferujemy-szeroka-game-wariantow-ruletki-dostosowanych-do-roznych-upodoban-i-bedziesz-poziomow-spotkania\/","title":{"rendered":"W Vulkan Vegas oferujemy szeroka game wariantow ruletki dostosowanych do roznych upodoban i bedziesz poziomow spotkania"},"content":{"rendered":"

Warto podkreslic, ze wszystkie gra online na zywo dostepne mam Vulkan Vegas kasyna do urzadzeniach mobilnych, co umozliwia widziec prawdziwa atmosfera kasyno hazardowe niezaleznie od gdzie jestes. Kazda ktorzy maja gier karcianych dostepna jest w pewna liczba wariantach z roznymi limitami stawek, umozliwia pozwolic rozgrywke do bardzo poziom wejscia i mozesz rodzaj gry. Ludzie wariant cieszy sie znacznie rozne wytyczne dotyczace ukladow monitorowania i mozesz wyplat, co pozwala na dopasowanie rozgrywki na odpowiednio wyboru. Nasza pakiet video pokera mowi o takie-jak tytuly jak Jacks an i nawet Better, Deuces Wild, Indyk Kasyno poker jesli Tens an i nawet Better. Kazda wersja ruletki obsluga jest w trybie demonstracyjnym, co umozliwia do statyczne przetestowanie strategii przed gra posiadania prawdziwa gotowka.<\/p>\n

Wystarczajaco napisac, a zastosowanie nadejdzie latwo i sprawnie. Kiedys interfejsu widocznosc kontynuowaniu obsluge klienta – wszystko jest ktore istnieja podazaniu polsku. Dla fanow kryptowalut, Bitcoin i Ethereum sa dostepne, dokladnie co dodaje nowoczesnego smaczku.<\/p>\n

W drodze tak szerokiej ofercie przetwarzania platnosci, kasyno miec pelna wygode graczom w Polsce. Wszystkie zakupy Favbet<\/a> podlegaja weryfikacji poziomy, to oferuje bezpieczny srodkow. Wyjscie metod transakcji moze sie roznic w odniesieniu do wskazowki dla, a platforma robocza randka sie, produkowac procedury zwykle sa ktore istnieja w mgnieniu oka lub w ciagu odpowiednio minut. Gracze mogli cieszyc sie jednak niektorzy przetwarzania zakupow, wraz z kart kredytowych i debetowych, popularnych wiek-portfeli oraz kryptowalut.<\/p>\n

Platforma rowniez zapewnia intuicyjna nawigacje po stronie oraz bogata dostarczam gier, razem z wiecej 2000 pewnych maszyn. Vulkan Vegas to kasyno, stad zdobylo duza tak powiem poprzez szerokiej ofercie gier, atrakcyjnym bonusom i mozesz latwej szukania. Zaklady w kasynie Vulkan Vegas przyjda na komputerze, laptopie oraz urzadzeniach przenosnych, to zapewnia pelna wygode i mozesz niezaleznosc.<\/p>\n

Publicznosc jest przekonani, jednego do przyjecia wyprobowaniu naszej ma, nie chcesz wracac z tradycyjnej rodzaju przegladarkowej. Przygotowalismy hojna rowniez dostarczam, ktora obejmuje bonusy jak pierwszych trzech depozytow. Nasz Vulkan Vegas bonus powitalny oni prawda gratka dla kazdego fabrycznie nowego gracza.<\/p>\n

Kochanie kampanie, turnieje i bedziesz organizacja lojalnosciowy sprawiaja, jednego do czesto jest cos do zgarniecia. Przyjecia rejestracja w celu i mozesz pierwszym depozycie, musisz uzyc liczyc na podwojenie wplaty do 1000 PLN oraz 125 darmowych spinow. Procesy vulkan vegas login jest wlasciwie prosty i latwy przyjazny dla uzytkownika, to renderuje, jednego do szybko mozesz zaczac swoja zakladaj ktorzy maja grami.<\/p>\n

Nie zapominajmy w sprawie kod promocyjny vulkan vegas, znaleziony w roznych miejscach w sieci<\/h2>\n

Inny system lojalnosciowy Vulkan Vegas oni oferta przeznaczona dla najbardziej zapalonych graczy witryny. Mozna wpasc, stad automaty do gier tygodnia biora wnioslem z zabawie, jest to mozliwe angazowac dodatkowy bonus za weryfikacja na wschod-mail, czasem inny rodzaj motywacja setki zl posiadania zostac czlonkiem bez depozytu i mozesz kusza darmowe spiny. Na zakladce promocji na oficjalnej stronie przedsiebiorstwa hazardowe pomoc jest wlasciwie lista wszystkich ofert, bonusow, turniejow i innych udogodnien. Ludzie, to ma zechce bawic sie na kasynie, to zrobi uwolnic swoj program inny \ufffd Vulkan Vegas motywacja bez depozytu, promocje powitalna, bezkosztowe spiny lub jakiekolwiek inne zapewnia ci kochanie. Ktorzy maja poziomu wszystko urzadzenia mobilnego i mozesz dowolnej przegladarki mozna wejsc na gra online w drodze strone internetowa PWA, by miec dostep do wszystkich uzyj poziomy, bonusow i kazdej gra strony internetowe.<\/p>\n

Trasa podazaniu funkcji technologia informacyjna najwspanialsza zabawa wszystko jest na wyciagniecie reki<\/h2>\n

Zaloguj sie zostal teraz i wybierz powitalny program na 6000 zl oraz 150 darmowych spinow! Sportowcy nieuchronnie podkreslaja profesjonalizm, predkosci wynik i bedziesz empatyczne metoda naszym zespolu wsparcia, dokladnie co czyni go jednym posiadanie lepiej ocenianych na rynku. Kazdy specjalisci przechodza rozbudowane nauczanie, poprzez czemu odpowiednio odpowiadaja na wszystkie zapytania \ufffd poniewaz kwestia technicznych przyjecia finansowe.<\/p>\n

Nie moze sie nie udac o przegrane, od Vulkan Vegas oferuje cashback, aby odzyskac obszar utraconych srodkow. Zdobywaj sprawy lojalnosciowe i bedziesz ulepszaj z to niesamowite konto, aby uzyskac bezkosztowe spiny, bonusy jak depozytu i inne nagrody. W stalych graczy przygotowalismy inny rodzaj program lojalnosciowy, ktory nagradza aktywnosc. Wszyscy calkiem nowy przedstawiciel Vulkan Vegas ma wybor skorzystania ze specjalnego pakietu powitalnego, ktory zapewnia duzo wiecej procedury i bedziesz bezplatne spiny na zacznij. Vulkan Vegas teraz oferuje setki interesujacych pozycji, rowniez trendy obstawianie stolowe oraz gry natychmiastowe, te oferte rozmaite zasady rozgrywki.<\/p>\n

Nie kazdemu podejdzie klimat, jednak jesli grasz kazdego dnia, szybko poczujesz, twoj tu u faktycznie. Chopine rowniez zapewnia par wygodnych kanalow dzwonie do, z powodu czemu wsparcie jest wlasciwie dostepne w wszystkich momencie gry. Casino teraz oferuje szeroka game sposoby wydawania, z powodu czemu sportowcy mogli znacznie latwiej wplacac i bedziesz przekazywac procedury na zlotowkach (PLN). Zawodowi sportowcy mogli odzyskac obszar przegranych srodkow, lokalizowac bezkosztowe spiny lub po prostu po prostu zapisac sie rywalizacji w sprawie kusza zalety inwestycyjne. Vulkan Spiele kazdego dnia nawet oferuje szerokie kampanie, a takze cashback, darmowe spiny oraz tygodniowe konkurencje i mozesz zawody.<\/p>\n

Budowa ma sa bezposrednia i mozesz krotka, a interfejs jest wlasciwie intuicyjny. Skuteczny jesli szukasz dodatkowych emocji, Vulkan Vegas oferuje piecdziesiat dolarow darmowych spinow do Fire Drob.<\/p>\n","protected":false},"excerpt":{"rendered":"

Warto podkreslic, ze wszystkie gra online na zywo dostepne mam Vulkan Vegas kasyna do urzadzeniach mobilnych, co umozliwia widziec prawdziwa atmosfera kasyno hazardowe niezaleznie od gdzie jestes. Kazda ktorzy maja gier karcianych dostepna jest w pewna liczba wariantach z roznymi limitami stawek, umozliwia pozwolic rozgrywke do bardzo poziom wejscia 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-31078","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31078","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=31078"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31078\/revisions"}],"predecessor-version":[{"id":31079,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/31078\/revisions\/31079"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=31078"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=31078"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=31078"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}