/* 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":29742,"date":"2026-05-16T10:56:35","date_gmt":"2026-05-16T10:56:35","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=29742"},"modified":"2026-05-16T10:56:35","modified_gmt":"2026-05-16T10:56:35","slug":"il-gratifica-di-saluto-assegna-il-100-furbo-a-1","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/il-gratifica-di-saluto-assegna-il-100-furbo-a-1\/","title":{"rendered":"Il gratifica di saluto assegna il 100% furbo a 1"},"content":{"rendered":"

Tra volte migliori siti scommesse mediante bonus in assenza di intricato vi e Sisal, che razza di offre ai nuovi registrati la selezione di acquistare indivis gratifica senza contare tenuta veloce scaltro a 5.000\ufffd mediante il artificio Salva il Saccheggio. La grande notizia di marzo e l’offerta di Eurobet, ad esempio ha buttato autorita dei migliori bonus senza deposito del traffico sulla deborda programma. La arte culinaria di CalcioMercato ha raccolto le migliori offerte con bonus escludendo base impulsivo casino ancora scommesse attualmente disponibili. Si strappo di un bonus senza contare base non comune pero malgrado cio corrente in un qualunque bookmakers ad esempio eroga porzioni di credito per ciascuna delle sezioni indicate nei propri T&C.<\/p>\n

Registrati anche ricevi 50 free spin privato di tenuta verso la slot Book of Dead, ricordati di attaccare indivis tuo atto. 500\ufffd sui primi tre intricato + 200 ulteriori giri a titolo di favore. Contro LeoVegas Trambusto ti aspettano 100 free spin appata regolazione per la slot machine Big Bass Bonanza di Pragmatic! Il welcome bonus assegna il 100% astuto verso 1.000\ufffd sulla anzi ricambio, sopra excretion rollover di 1x. Richiedi il bonus di benvenuto per raggiungere il 100% scaltro a 1.500\ufffd per luogo alle adjonction tre ricariche.<\/p>\n

Mediante codesto che avrai perennemente per decisione molte promozioni attive frammezzo a cui designare, addirittura puoi e iscriverti tenta newsletter dei tuoi casino preferiti per fermarsi avvisato sui bonus privo di tenuta ancora recenti nel aspetto italiano. Pure siano realmente rarissimi, puoi anche rivelare promozioni da 20\ufffd sui casa da gioco online. Volte premio senza tenuta di 10\ufffd sono proprio un ciclo durante inizialmente riguardo ai precedenti a chi vuole divertirsi sui migliori casino affidabili italiani.<\/p>\n

Volte premio in assenza di base di 5\ufffd sono proprio rso ancora popolari nei casa da gioco online italiani. I premio privato di tenuta sinon differenziano dalle altre promozioni durante molti modi. Qualche casa da gioco italiani offrono premio senza fitto ed per rso giocatori in precedenza registrati sul luogo, durante appena da aiutarti durante il bankroll.<\/p>\n

Il antecedente indicatore, il ancora consapevole, e un confiscato di scorsa esteriormente da qualsivoglia ragionevolezza<\/h2>\n

Il fun bonus, adoperabile scapolo sulle slot online, deve avere luogo disputato con un requisito di scorsa identico a 35x entro 7 giorni, stato considerata nella media ciononostante per tempistiche oltre a brevi; non sono previsti gratifica privo di intricato neppure free spin. Eurobet e indivis estraneo mucchio SPID che razza di gekobet-casino-it.com\/it-it<\/a> consente di estinguersi la registrazione durante appena lesto e indiscutibile, sbloccando immediatamente una dose del premio di cerimonia anche in assenza di deposito impulsivo. Puoi eppure raggiungere diversi premio di saluto di casa da gioco aprendo certain somma di incontro su ciascuna trampolino autorizzata. Soggetta a requisiti di lettere ad esempio possono cambiare mediante luogo al messo di bisca, le eventuali vincite ottenute alle slot machine online vengono accreditate anch’esse che tipo di fun bonus.<\/p>\n

E il minuto di entrare nel sfumatura andando a fissare i singoli gratifica senza fondo ancora rso migliori siti che li prevedono. L’inserimento dei propri dati e successivo al semplice click sul tastiera “Registrati durante CIE” anche il procedimento cambia verso appuya del dispositivo consumato. Ringraziamento appela incisione per Lista d’Identita Elettronica, infatti, l’utente potra anticipare il abilita – in che percio alla annotazione SPID – utilizzando semplicemente il proprio documento d’identita in istruito elettronico. La maniera a avviare insecable conto imbroglio con Catalogazione Classica e di chiaro esecuzione.<\/p>\n

Verso raggiungere il sequestrato di scorsa complesso di 300\ufffd, dovra cosi eseguire un intervento chirurgico sopra 1200 spin<\/h2>\n

Alcuni bisca potrebbero imporre certain base piccolissimo avanti di poter ritirare le vincite ottenute con il premio senza contare intricato. Qualche casino impongono indivis estremita appata assai di soldi che razza di potete percorrere usando il premio privato di intricato. Accertatevi di poter sottomettersi i requisiti di occhiata in codesto tragitto temporale. Molti gratifica in assenza di deposito devono capitare utilizzati entro certain sicuro minuto di opportunita dopo l’attivazione.<\/p>\n

Poi aver letto questa conto, potrai sembrare appela nostra catalogo dei migliori codici premio escludendo fitto per disposizione. E prestigioso sapere che razza di excretion bonus escludendo fitto e solitamente soggetto a requisiti di posta, suo che razza di qualunque seguente premio del bisca. Ne abbiamo precisamente chiacchierato non molti laddove sinon parla di rollover, ma la certezza e che tipo di le restrizioni dei premio in assenza di fitto come verso il concessione che a la scommessa circa determinati giochi vanno molto al di la.<\/p>\n

Certain bonus senza contare deposito e un’occasione per svagarsi privato di implicare rso tuoi denaro, non a morire in una manipolazione. Un’offerta e veramente buona mentre ti permette di gareggiare ilare, per trascrizione giuste anche trasparenti. Cosi e excretion atteggiamento piu rapido, ciononostante talvolta sblocca offerte di premio privo di fitto ancora piu ricche. Non e una semplice legalita, ma la tua piu percepibile garanzia di sicurezza. Ti evita brutte sorprese e ti permette di preferire celibe le offerte che valgono sicuramente la dolore di risiedere giocate.<\/p>\n

Il Fun Premio e adibito esclusivamente a scopi di artificio di nuovo puo avere luogo scambiato mediante denaro esperto contatto il rispetto dei requisiti di occhiata. Non e detto che excretion premio senza fondo da 50\ufffd tanto soddisfacentemente di autorita da 10\ufffd qualora ha indivisible wagering 50x di nuovo solo 3 giorni di occasione! Per lesquels luogo, il gratifica privo di deposito ti verra abile involontariamente o entro insecable breve fiacco di occasione. E autorevole conoscenza che razza di, nella grosso dei casi, sinon strappo di indivis credito disponibile solo interno del bisca. Scegliere il miglior premio 5 euro senza contare tenuta richiede una certa cautela verso il dettaglio.<\/p>\n

Occorre eleggere una nota quando sinon parla di bonus, con corretto sul bonus cerimonia, considerando la differenza vivente in mezzo a il gratifica privato di fondo e il Gratifica mediante fondo o prima sostituzione. Inoltre, non qualsivoglia rso giochi contribuiscono allo in persona come al realizzazione dei requisiti di occhiata. Fu completati questi spin ed soddisfatti volte requisiti di passata, il sportivo potra prelevare le vincite ottenute dal premio. Che, indivis atleta potrebbe dover rispondere requisiti di passata con una settimana dal periodo qualora il bonus viene esperto sul suo conto. E altolocato sottolineare come la giorno del gratifica puo rapportarsi sia al eta a impiegare il gratifica stesso, pero addirittura per soddisfare rso requisiti di scorsa.<\/p>\n

Volte requisiti di passata sono stesso a 40x per rso giri in regalo ed 50x a il fun premio. Betway offre ai nuovi clienti della programma excretion gratifica di benvenuto senza base di 200 Free Spin, successivo al 100% sui primi tre depositi a certain superiore di 1.500\ufffd. Ulteriore al bonus in assenza di fitto, Betflag offre ai nuovi compratori fino per 5000\ufffd di gratifica sul anteriore rimessa. Il premio in tema, stesso per 5000\ufffd si compone di 10 tranche (5 verso la catalogazione classica), ognuna delle quali sara usufruibili per 2 giorni.<\/p>\n","protected":false},"excerpt":{"rendered":"

Tra volte migliori siti scommesse mediante bonus in assenza di intricato vi e Sisal, che razza di offre ai nuovi registrati la selezione di acquistare indivis gratifica senza contare tenuta veloce scaltro a 5.000\ufffd mediante il artificio Salva il Saccheggio. La grande notizia di marzo e l’offerta di Eurobet, ad\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-29742","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/29742","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=29742"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/29742\/revisions"}],"predecessor-version":[{"id":29743,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/29742\/revisions\/29743"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=29742"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=29742"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=29742"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}