/* 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":70402,"date":"2026-05-22T21:15:52","date_gmt":"2026-05-22T21:15:52","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=70402"},"modified":"2026-05-22T21:15:53","modified_gmt":"2026-05-22T21:15:53","slug":"pero-resulta-importante-hoy-son-unos-los-casinos-online-con-el-pasar-del-tiempo-bonos-desprovisto-tanque-que-hay-en-el-comercio-sobre-de-cualquier-parte-del-mundo","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/pero-resulta-importante-hoy-son-unos-los-casinos-online-con-el-pasar-del-tiempo-bonos-desprovisto-tanque-que-hay-en-el-comercio-sobre-de-cualquier-parte-del-mundo\/","title":{"rendered":"Pero resulta importante, hoy son unos los casinos online con el pasar del tiempo bonos desprovisto tanque que hay en el comercio sobre De cualquier parte del mundo"},"content":{"rendered":"

De descargar nuestro bono de casino suele acontecer indispensable seguir alguno a determinados instalaciones de envite<\/h2>\n

En el caso de Pause & Play, los mas seres podran acceder a algun bono casino falto tanque sobre 30\ufffd, cosa que les deja gozar desplazandolo hacia el pelo familiarizarse utilizando casino. Los tiradas gratuito sobre AHTI Games<\/a> casino, igual que el personal sustantivo explica, resultan un regalo gratuito con el que ensenaras diversas giros o en la barra tiradas sobre tragamonedas de retar alrededor del subscribirte en algun casino en internet. No resultan los sobra usuales, por motivo de que la verdad es que normalmente tendras que seleccionar un bono desprovisto tanque la cual acento utilizar aquel dinero acerca de tiradas sin cargo alrededor slot cual tu desees, pero seri\ufffda una diferente de las alternativas de los casinos.<\/p>\n

Sin embargo, nunca los casinos las ofrecen en Chile y no ha transpirado, cuando estan disponibles, normalmente insertar requisitos de apuesta de mas elevados cual otras ofertas. A traves de los caballeros se pueden almacenar lugares cada puesta llevada a cabo asi\ufffd como, mas adelante, canjearlos por recursos favorable u diferentes prerrogativas alrededor personal casino. Con el fin de escoger los mejores casinos con manga larga bono sobre audiencia sobre Portugal nunca puntada que usan fijarse durante cantidad promocionada.<\/p>\n

Las casinos recientes que usan bono falto tanque tienden a dar esencia mas profusamente generosas para conseguir individuos. Las casinos legales con el pasar del tiempo bono carente deposito referente a Argentina resultan poquitos por motivo de que el reglamento limita sobre como podrian promocionarse. Comunmente, solo se puede designar la bonificacion sobre sometimiento, igual que sobre LeoVegas, adonde eliges entre el bono de casino indumentarias casino sobre avispado. Lowen Play, cualquier casino con manga larga bono de recepcion excepcional, se eleva la postura con manga larga incluso 110\ufffd desplazandolo hacia el pelo 120 tiradas regalado.<\/p>\n

Las bonos sin tanque sirven con el fin de percibir mercados con peligro controlado<\/h2>\n

En la actualidad los bonos sobre casino en internet y no ha transpirado los bonos sobre bienvenida resultan 500% legales asi\ufffd como cuentan con decision acerca de el canjeo desplazandolo hacia el pelo trato acerca de Chile. Si, acerca de Argentina hay bonos sobre casino gratuitos conocidos igual que “bonos falto deposito”. Nuestro mejor bono sobre casino seri\ufffda nuestro bono sobre admision sobre Casino777. Entre dichos casinos encontraras bonos de admision falto deposito, torneos sobre slots asi\ufffd como ruletas referente a avispado, llantas de la fortuna de sacar premios a habitual, bonos para tragaperras y cashback sobre perdidas. Los mas grandes bonos de casino son los bonos sobre recibo sobre Casino777, Genial Madrid Casino Online y bwin.<\/p>\n

En caso de que deseas disfrutar de esa oferta deberias juguetear en algun exacto dia por lo menos 30\ufffd en dinero favorable a los juegos sobre casino. Buscando anos alrededor campo, he aprendido que las mejores bonos de casino en Argentina no son los mejores, suerte los que poseen modos justas. Mismamente convierto algun bono sin deposito acerca de apuestas zapatillas de deporte acerca de concepto eficaz carente autoenganarme. Inclusive mismamente, no hablamos recursos regalado; esta con reglas y antiguedad. Hilvan con manga larga cumplir un condicion, igual que pronosticar un resultado, de desbloquear el bono desprovisto tanque sobre apuestas.<\/p>\n

Consigue 50 tiradas gratuito en la disyuntiva slots seleccionadas sobre Kirolbet, ademi?s en caso de que os agradan las apuestas zapatillas de deporte, te portas asimismo inclusive 100 eurillos sobre freebets para tu primer tanque. Este seri\ufffda de nosotros ahora mismo el superior para los bonos carente deposito casino en internet, ya que lo perfectamente es posible gozar con manga larga diversas articulos (slots, casino o en la barra apuestas de deporte). Concluye sobre producirse del grill algunos de los mas grandes bonos sin deposito casino de una treintena euros en compania de JOKERBET.<\/p>\n

Varios casinos hallan dado algun camino mas alla asi\ufffd como debido a se fabrican con cualquier modelo de bono de casino sin tanque igual que absolutamente las promociones referente a fechas especiales (por ejemplo, acontecimiento o aniversarios). En caso de que os suenan a una cosa cercano a los giros sin cargo es porque lo perfectamente son, cosa que pasa podri\ufffda ser este bono sobre casino carente tanque si no le importa hacerse amiga de la grasa destina solo en juegos de banco igual que una ruleta o en la barra nuestro Blackjack en internet. Resulta atractiva sobre todo es que, como tendras que observar posteriormente, hay acoples un modelo sobre bono sobre casino carente deposito que te se puede lucrar una vez que acabas de accesar acerca de la casa de postura espanola. Nuestro bono sobre casino sin tanque seri\ufffda un incentivo que normalmente ofertar la mayoria de casas sobre postura en internet para conseguir cautivar sobra jugadores principiantes. Los limitaciones incluyen instalaciones sobre postura, limites de ganancia principio, asi\ufffd como algun lapso determinado con el fin de utilizar nuestro bono. Si, las bonos carente deposito poseen requisitos de postura cual deberias cumplir de poder arrinconar los ganancias.<\/p>\n

Algun bono falto tanque es una oferta sobre casino que te brinda el segundo de jugar con el pasar del tiempo dinero real referente a algun sitio sobre apuestas online falto poner en riesgo tu personal costo. Si quieres obtener noticia adicional de alguno sobre varones, nunca dudes referente a consultar las comentarios completas para obtener sobra pormenores de la mayori\ufffda todos los casinos en internet preferiblemente valorados. Si te gustaria adentrarte del mundo para casinos online falto disponer referente a riesgo tu dinero, os sugerimos aprovechar algun bono desprovisto tanque actualmente mismo.<\/p>\n

Las tiradas sin cargo resultan una oferta directa asi\ufffd como interesante de oriente segmento. Las tiradas de balde resultan opiniones para aficionados de las tragaperras cual desean experimentar mas titulos carente riesgo indumentarias retar a sus juegos favoritos. Oriente recursos sobre rebaja estaria luego ser a campos sobre puesta para impedir potenciales retirarlo. Los ganancias que adquisicion con el pasar del tiempo estas tiradas sin cargo se podri\ufffdan mover convierten comunmente sobre recursos sobre descuento. Con el fin de eludir cual los jugadores sencillamente cobren el recursos del bono asi\ufffd como se podri\ufffdan mover marchen, los casinos implementan palabras y caracteristicas estrictos, igual que campos de puesta y no ha transpirado limites maximos de beneficio. Podria ser una diferencia sustancial con manga larga participar acerca de \ufffdforma demo\ufffd o \ufffdpor distraccion\ufffd; a los bonos carente deposito, sin embargo juegas sin comprometer su particular recursos, las ganancias pueden ser reales.<\/p>\n

Los bonos sin tanque referente a De cualquier parte del mundo nos cuentan la ocasii?n conveniente sobre participar sin cargo, aunque la importancia dependeri? para los instalaciones de apuesta. Si decides retar con manga larga un bono carente tanque, lee ya nuestro condicionado desplazandolo hacia el pelo revisa cual es el monto maximo para los premios. Se podri? corroborar si el casino que elijas posee la alternativa de bonos sobre audiencia antes de registrarte.<\/p>\n","protected":false},"excerpt":{"rendered":"

De descargar nuestro bono de casino suele acontecer indispensable seguir alguno a determinados instalaciones de envite En el caso de Pause & Play, los mas seres podran acceder a algun bono casino falto tanque sobre 30\ufffd, cosa que les deja gozar desplazandolo hacia el pelo familiarizarse utilizando casino. Los tiradas\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-70402","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/70402","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=70402"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/70402\/revisions"}],"predecessor-version":[{"id":70403,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/70402\/revisions\/70403"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=70402"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=70402"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=70402"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}