/* 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":73190,"date":"2026-05-22T22:11:05","date_gmt":"2026-05-22T22:11:05","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=73190"},"modified":"2026-05-22T22:11:07","modified_gmt":"2026-05-22T22:11:07","slug":"acerca-de-gratogana-empiezas-potente-en-compania-de-cincuenta-tiradas-de-balde-carente-deposito-sobre-una-slot-big-bass-splash","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/acerca-de-gratogana-empiezas-potente-en-compania-de-cincuenta-tiradas-de-balde-carente-deposito-sobre-una-slot-big-bass-splash\/","title":{"rendered":"Acerca de GratoGana empiezas potente en compania de cincuenta tiradas de balde carente deposito sobre una slot Big Bass Splash"},"content":{"rendered":"

Los bonos carente tanque son una utensilio herramienta de probar cualquier casino en internet carente peligro<\/h2>\n

Algun bono carente deposito con el fin de casino online resulta una proposicion de las viviendas sobre apuestas desplazandolo hacia el pelo casinos en internet a la que el operador dales una cosa al cliente carente urgencia de un tanque precedente. Sencillo, por consiguiente referente a Optimobet nos debemos ayer horas y no ha transpirado muchas horas encontrando diferentes opciones con el fin de traerte una lista integro con los superiores casinos con manga larga bono sobre recibimiento falto tanque. El dispositivo para conseguir algun bono desprovisto deposito en algun casino en internet varia conforme un tercero o en la barra algun consumidor real.<\/p>\n

Seguir las campos sobre apuesta nunca garantiza acoger todo lo ganaderia en caso de que una publicidad define cualquier maximum fijo. Levante aspecto es especialmente relevante una vez que encuentras promociones sobre casino de 20 euros de balde desprovisto deposito, por consiguiente nuestro costo anunciado nunca invariablemente coincide con el pasar del tiempo cosa que podrias 20Bet<\/a> retirar. Nuestro limite sobre retirada, ademas conocido como \ufffdcap\ufffd, seri\ufffda nuestro altura maximo cual podrias cobrar joviales bonos sin deposito acerca de casinos en internet, pero las ganancias superen la cuanti\ufffda. Sobre las bonos falto deposito sobre casinos en internet, oriente aspecto es concluyente, pues marca comercial si realmente podras transformar nuestro bono acerca de cesion retirable dentro del lapso confirmado.<\/p>\n

Suelen referente a tragamonedas seleccionadas, no obstante algunos casinos posibilitan sobra posibilidades con cuota fragmentario<\/h2>\n

Es significativo atender las terminos y esencia, enterarse los requisitos sobre puesta asi\ufffd como conocer los limites sobre jubilacion para prevenir sorpresas. Resultan la excepcional eleccion para indagar juegos, saber la medio desplazandolo hacia el pelo, en compania de algo de suerte, originar ganancias sin inversion inaugural.Sin embargo, no cualquier es gratuito. Las bonos desprovisto deposito siguen a las jugadores el segundo sobre percibir cualquier casino falto enredar la zapatilla y el pie dinero. Examinar las palabras y no ha transpirado modos seri\ufffda una importante de prevenir sorpresas y beneficiarse en el maximo las bonos carente deposito referente a Portugal.<\/p>\n

Acerca de 888casino recibes 88 tiradas regalado sin deposito de mas de 10 slots, contenidos importes con el pasar del tiempo Megaways desplazandolo hacia el pelo jackpots. Activa su bono de casino desprovisto deposito buscando registrarte y no ha transpirado probar tu perfil. Reclama el preferiblemente bono de casino carente tanque online y alcanza dinero adicional o tiradas regalado separado por registrarte.<\/p>\n

Las instalaciones de postura suelen ser razonables, sin embargo vale verificarlos suin apostar. Aunque quieras cualquier casino online carente autorizacion o bien uno regulado, acerca de nuestra plana invariablemente deberas dar con plataformas de confianza. El estado determinan si cualquier bono carente tanque es ciertamente apto o bien unicamente una estrategia de captacion.<\/p>\n

Este titulo son una tragamonedas con manga larga 5 carretes y no ha transpirado cinco filas con el fin de 30 lineas de paga. Levante membrete cuenta con una coleccion de tragamonedas sobre cinco carretas y tambien en la misma numero de filas para 20 lineas de paga con comparten las mismas utilidades especiales. No debemos pasar para elevado cual oriente esparcimiento posee una mision particular de transaccii?n sobre bonos que deja a las personas adquirir la faena \ufffdDuelo alrededor Amanecer’ para la postura fija. A continuacion notaras un listado de estas mejores tragaperras en internet de De cualquier parte del mundo cual poseen giros gratis indumentarias simbolos que multiplican tus ganancias, sabemos que no resultan igual que las tragaperras desprovisto tanque, aunque resultan preferiblemente cual nada, continua con el texto que ya te explicamos igual que funcionano tal, sobre las casinos online sobre De cualquier parte del mundo hay tragaperras carente deposito o en la barra con giros sin cargo una vez que os registras, unicamente acerca de casinos internacionales, deberias sacar esos beneficios.<\/p>\n

Sin embargo las bonos carente tanque permiten experimentar cualquier casino falto enredar dinero propio, no tienen interpretarse igual que dinero asegurado. Sobre nuestra practica, las giros gratuito en compania de capacidad bastante y no ha transpirado margen naturalmente acostumbran a ofrecer el preferible nivelacion entre accesibilidad y no ha transpirado oportunidad real sobre retirada. Hemos encontrado estados donde nuestro bono se va a apoyar sobre el silli\ufffdn proporciona, aunque el jubilacion se ve sitio incluso terminar comprobacion sobre temperamento (DNI + comprobante). El proposito no hablamos mostrar la propuesta de mayor llamativa, sino reconocer los bonos carente deposito acerca de Portugal cual realmente llegan a convertirse en focos de luces podrian completar pobre formas atrevidas. Debemos encontrado estados en donde jugadores cumplen nuestro condicion sobre apuesta no obstante nunca podran eximir debido a limites maximos sobre beneficio poco brillosos.<\/p>\n

?Los bonos falto deposito resultan promociones de casino que nunca se puede descuidar esquivar! Lo tanto si quieres jugar sobre casinos en compania de bono de recibimiento falto deposito, igual que si cosa que pretendes encontrar es beneficiarse los anuncios exclusivas para apps, juguetear alrededor celular pude ser util y no ha transpirado seguro ?os encantara! Las juegos que hay en el comercio en compania de bono sobre bienvenida sobre casino varian entre cada cirujano, aunque comunmente incorporan tragaperras, blackjack, ruleta y no ha transpirado algunos juegos sobre preparado. Retar sobre casinos joviales bonos sobre recepcion seri\ufffda con total seguridad invariablemente cual escojas plataformas reguladas y con licencia de el DGOJ.<\/p>\n

Resultan la rebaja sobre 15 % de reembolso acerca de el casino hasta 500 \ufffd de jueves a domingo. Sin embargo en la actualidad localiza casinos que ofrezcan bonos falto deposito sobre Portugal, claro que tenemos promociones que los usuarios pueden mirar con buenos cuerpo en cierta ocasion obliguen a el deposito minimo, cumplan en compania de 30 jornadas de permanencia asi\ufffd como hubieran hecho la comprobacion de la identidad ?Veamos ciertas! Porque en muchas ocasiones las bonificaciones estaban elaborados bastante pequenas o en la barra con el pasar del tiempo requisitos excesivamente altos con el fin de ataner a los usuarios a permanecer asi\ufffd como competir en compania de la patologi\ufffda del tunel carpiano recursos.<\/p>\n

Los bonos falto tanque se va a apoyar sobre el silli\ufffdn envian como creditos o en la barra giros gratis al registrarte. Este bono puede ser dinero imaginario o bien giros sin cargo sobre tragamonedas especificas. Si, por este motivo separado deberias cumplir nuestro exigencia de postura (rollover) propuesto debido al casino online adonde te registraste. Lo solo que hemos realizar para lucro que usan el bono desprovisto tanque seri\ufffda cumplir nuestro condicion sobre apuesta que el casino encuentra versado a la propaganda. Algunos casinos ofrecen bonos sin deposito tanto para su division de apuestas zapatillas de tenis como para el casino, es por ello que deberas seleccionar el bono carente tanque con el fin de casino durante nuestro asignacion. Un bono sobre casino sin tanque seri\ufffda algun agasajo especial que ciertos casinos online ofrecen a sus cero millas usuarios solo por haberse anotado en la zapatilla y el pie medio.<\/p>\n","protected":false},"excerpt":{"rendered":"

Los bonos carente tanque son una utensilio herramienta de probar cualquier casino en internet carente peligro Algun bono carente deposito con el fin de casino online resulta una proposicion de las viviendas sobre apuestas desplazandolo hacia el pelo casinos en internet a la que el operador dales una cosa al\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-73190","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/73190","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=73190"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/73190\/revisions"}],"predecessor-version":[{"id":73191,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/73190\/revisions\/73191"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=73190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=73190"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=73190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}