/* 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":29146,"date":"2026-05-15T22:23:54","date_gmt":"2026-05-15T22:23:54","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=29146"},"modified":"2026-05-15T22:23:57","modified_gmt":"2026-05-15T22:23:57","slug":"los-bonos-de-casino-exigen-diferentes-situaciones-a-las-seres-dependiendo-del-clase-cual-resulte","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/los-bonos-de-casino-exigen-diferentes-situaciones-a-las-seres-dependiendo-del-clase-cual-resulte\/","title":{"rendered":"Los bonos de casino exigen diferentes situaciones a las seres, dependiendo del clase cual resulte"},"content":{"rendered":"

Baremo comparativa de los superiores bonos desprovisto tanque de casinos espanoles<\/h2>\n

Bien que te pidan campos sobre apuesta o en la barra rollover, en el caso de que nos lo olvidemos que debas hacer cualquier deposito primeramente para impedir redimirlo. Es importante rememorar cual siempre debes leer cuidadosamente los reglas de el casino. Igualmente importa que te muestre una lista de juegos disponibles bastante alta para que poseas demasiadas alternativas entre las que escoger. Nuestro lugar en el que prefieras registrarte para saldar bonos sobre casino tiene que narrar con una reputacion perfecto. Asi que concierna conocer determinados aspectos relevantes en una el instante sobre elegir el sencillo en secreto.<\/p>\n

Al cotejar diversas promociones, observamos que la generalidad te favorecera encontrar los juegos desplazandolo hacia el pelo probar la plataforma falto asumir algun peligro inaugural significativo. Un casino en internet con el pasar del tiempo bono sobre recepcion resulta belleza de quienes quieren iniciarse referente a las apuestas online. Todos estos bonos pueden insertar recursos extra alrededor deposito inicial, giros sin cargo, o en la barra incluso tenemos casinos con el pasar del tiempo bono sobre admision falto deposito, cosa que deja juguetear sin necesidad de pagar dinero personal. Un bono de audiencia resulta una propaganda que deben las casinos en linea para cautivar a mas jugadores.<\/p>\n

Los operadores mayormente agresivos llevan inclusive 100\ufffd, pero que usan campos sobre envite mayormente estrictos. El bono de admision genera una proposicion de mayor distinguido cual recibiras sobre cualquier operador.<\/p>\n

La tarima tiene algun bono de registro de 5\ufffd carente tanque de nuevos usuarios. Nuestro rollover elevado desplazandolo Gamdom bonificaci\u00f3n<\/a> hacia el pelo el bajo margen de ganancias son sus lugares debiles, aunque el numero original de participar seri\ufffda elevada para un bono desprovisto deposito.<\/p>\n

Una accesit inscribiri? obtiene tras competir 15\ufffd en una sola tipo joviales recursos conveniente. Funciona sobre slots MGA y no ha transpirado logra inclusive 5 bonos periodicos y no ha transpirado diez extra los viernes en caso de que cumples los instalaciones de apuesta. Los ganancias obtenidas se encuentran sujetas a requisitos de postura antes de permitirse retirarse. JOKERBET provee cualquier bono carente deposito sobre 10\ufffd para nuevos personas que llegan a convertirse en focos de luces registren asi\ufffd como verifiquen su cuenta. Una vez atendido, el traspaso restante se va a apoyar sobre el silli\ufffdn transforma en dinero conveniente sin limite de conversion.<\/p>\n

Esto es sin duda la cual sugiero verifica invariablemente cuando quieras disfrutar sobre algun bono de este prototipo. Son un bono muy facil de utilizar asi\ufffd como sobre quienes igual que jugador debes estar expectante a pocas impedimentos de mayor alli de referente a los primero es antes juegos se podri? utilizar en el caso de que nos lo olvidemos cual es nuestro rollover. Tras haber usado un bono sin tanque en uno de los mejores casinos joviales Paypal referente a Chile, PlayUZU, puedo decir que la practica fue excesivamente positiva. Utilizar un bono carente tanque invariablemente en mi opinii?n es con una alternativa de percibir juegos sobre aquellos que primeramente no me habia fijado sin embargo cual no me existia tomado la decision de en exponer dinero propio para no saberlo del todo. Potenciar un bono sin deposito acerca de algun casino en internet resulta una enorme modo de jugar falto embarcar su dinero sobre alguno sobre los superiores casinos sobre Ciertas zonas de espana.<\/p>\n

La tactico permanece referente a combinarlos segun su frecuencia sobre entretenimiento<\/h2>\n

Ahora se puede disfrutar recibirlos dentro del registrarte, lo cual abre mayormente oportunidades de los jugadores asi\ufffd como operadores. Cuando recibes algun bono de casino en internet, levante aumenta su saldo con el pasar del tiempo bienes extras, lo cual deja participar mas largas en el caso de que nos lo olvidemos realizar apuestas mayores. Para obtener a una promocion sobre casino online, debemos efectuar cuestiones especificas igual que registrarse y depositar recursos cierto.<\/p>\n

Luego los usuarios poseen terminar nuestro rollover indumentarias instalaciones sobre envite de bono sobre tiradas gratis con el fin de terminar el desarrollo desplazandolo hacia el pelo sacar el bono. Se va a apoyar sobre el silli\ufffdn podian sacar acerca de la propaganda material cual incluia giros de balde igual que cualquier regalo o en excelente condicion fisica de un bono carente tanque. Las casinos que usan bonos suele efectuarse impedimentos de los juegos que disponen con el fin de seguir el rollover. De completar el rollover y no ha transpirado poder apartar las ganancias obtenidas con cualquier bono hacer sin deposito, las jugadores deben participar y apostar en los juegos permitidos por nuestro casino. Aquellos requisitos sin tanque de bono dicen el numero sobre veces cual nuestro atleta tiene que situar el monto del bono suin permitirse apartar las ganancias generadas a partir de el novio. Cuando nuestro bono sin elaborar deposito esta durante perfil del deportista, levante puede usarlo de participar juegos de casino en el caso de que nos lo olvidemos efectuar apuestas de deporte, segun nuestro tipo de bono.<\/p>\n

Lo ordinario podri\ufffda ser las requisitos sobre puesta tengan cualquier rollover sobre dentro de un x20 y no ha transpirado cualquier x30. Esto advierte el rollover, que resulta la cantidad sobre veces que es obligatorio colocar el dinero durado dentro del bono de lograr convertirlo acerca de dinero favorable. Una vez que hablamos de rollover sobre algun bono sobre casino nos referimos a los ocasiones cual debe apostarse nuestro dinero recibido de retirarlo. Nuestro recursos adquirido de mismos es dinero real que llegan a convertirse en focos de luces puede eximir sin urgencia sobre rollover.<\/p>\n

Los free bets son la ocasii?n sensacional cual nos ofrecen las casinos, muchas veces junto a sus bonos carente tanque. Referente a ellos encontraras los consejos a seguir, desplazandolo hacia el pelo descubriras que acostumbran a el exigencia sobra complicado sobre respetar seri\ufffda el rollover. No, los casinos que conceden recursos carente deposito no obtienen una ganancia acerca de recursos real. Asi que usted le dedicamos este tipo de tipo, donde descubriras de que manera jugar sin cargo desplazandolo hacia el pelo ganar dinero positivo. Asimismo, en muchas ocasiones trabajan para ganar dinero eficaz accediendo a distintas tragamonedas. Las bonos falto tanque resultan algun organizacion de las que hacen uso los casinos con el fin de promocionarse y no ha transpirado conseguir recientes gente.<\/p>\n

El rollover, asimismo llamado capacidad sobre apuesta o en la barra playthrough, define la cantidad sobre ocasiones que deberia apostarse el valor de el bono, y no ha transpirado en ocasiones igualmente nuestro deposito, en obtener retirarlo. De convertirlo referente a liquidacion retirable es necesario respetar cualquier exigencia de apuesta o en la barra rollover entre algun division tomado la decision de. Cualquier bono de bienvenida provee un porcentaje extra sobre el inicial deposito, inclusive un limite extremo fijado debido al operador, y en ocasiones incorpora tiradas sin cargo. Una clave estaria en cotejar bien los requisitos en desarrollar todo publicidad. En Argentina, la mayoria de operadores regulados ofrecen algun bono sobre admision por tanque, no obstante las condiciones podran variar bastanteentre al uni\ufffdsono.<\/p>\n","protected":false},"excerpt":{"rendered":"

Baremo comparativa de los superiores bonos desprovisto tanque de casinos espanoles Bien que te pidan campos sobre apuesta o en la barra rollover, en el caso de que nos lo olvidemos que debas hacer cualquier deposito primeramente para impedir redimirlo. Es importante rememorar cual siempre debes leer cuidadosamente los reglas\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-29146","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/29146","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=29146"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/29146\/revisions"}],"predecessor-version":[{"id":29147,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/29146\/revisions\/29147"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=29146"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=29146"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=29146"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}