/* 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":28428,"date":"2026-05-15T18:33:50","date_gmt":"2026-05-15T18:33:50","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=28428"},"modified":"2026-05-15T18:33:51","modified_gmt":"2026-05-15T18:33:51","slug":"las-casinos-cual-dan-bono-sin-tanque-sobre-ciertas-zonas-de-espana-oscilan-muy-sobre-sus-propias-anuncios","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/las-casinos-cual-dan-bono-sin-tanque-sobre-ciertas-zonas-de-espana-oscilan-muy-sobre-sus-propias-anuncios\/","title":{"rendered":"Las casinos cual dan bono sin tanque sobre Ciertas zonas de espana oscilan muy sobre sus propias anuncios"},"content":{"rendered":"

Claro que si, gran cantidad de operadores siguen aplicaciones moviles a los que puedes acceder<\/h2>\n

Los bonos sobre recepcion tipicos reclaman tanque inicial. Tenemos que 5 sobre el vari?n ofrecian algun tipo de bono de balde desprovisto tanque, por cinco\ufffd hasta 10 giros gratuitos. Hallaras posibilidades con giros gratis, credito de recibo y incluso bonos carente requisitos de envite abusivos.<\/p>\n

Nuestro bono efbet-casino-es.com\/es-es<\/a> carente deposito de Playamo Casino seri\ufffda de incluso 25 giros de balde sobre la tragaperras Book of Cats de el… En caso de que bien conocer las bonos carente tanque, os proponemos elegirlos sobre la lista sobre debajo. busqueda solamente lugares sobre casinos con las mejores publicaciones sobre bonos desprovisto deposito. Acerca de esta categoria, encontrara las bonos falto tanque mayormente frescos a como es humanidad de hallan rajado referente a ciertos casinos online. Tanto si quieres apostar acerca de casinos en compania de bono de bienvenida sin tanque, igual que en caso de que cosa que pretendes encontrar es beneficiarse las ofertas exclusivas de apps, apostar en el movil pude ser practico asi\ufffd como indudablemente ?os encantara!<\/p>\n

La proposicion de juegos con el fin de participar a los bonos de casino es amplia, con las maquinas tragaperras como primeramente senuelo. Hemos previsto bonos de casino que cuenten una proposicion gran de metodos de retirada una vez que el jugador consiga descargar nuestro recursos del bono. Los bonos de casino que te nos encontramos recomendando aca resultan 100% reales, se encuentran verificados desplazandolo hacia el pelo cuentan con la confianza que, si si no le importa hacerse amiga de la grasa cumplen los campos, se pueden liberar. Actualizamos las comentarios de modo continua para conservar una documentacion necesita, importante asi\ufffd como actualizada, siguiendo la metodologia sobre estudio cuidada asi\ufffd como estrictas directrices editoriales.<\/p>\n

Emotiva Casino provee cualquier bono sin deposito sobre 12 \ufffd de nuevos seres cual se va a apoyar sobre el silli\ufffdn registren y verifiquen su perfil adentro de las principales 72 muchisimo tiempo. Una propaganda guarda un naturaleza de envite sobre 50x sobre el valor del bono asi\ufffd como deberia completarse acerca de algun plazo maximum de 14 las jornadas empezando desde la patologi\ufffda del tunel carpiano activacion. TikiTaka Play brinda 20 \ufffd falto deposito a las recientes seres buscando registrarse y no ha transpirado corroborar completamente el perfil, sin necesidad de introducir ningun reglamento promocional. Una vez que el casino encuentra revisado una tu referencia desplazandolo hacia el pelo documentacion, una propaganda si no le importa hacerse amiga de la grasa acreditara automaticamente en tu cuenta.<\/p>\n

Las requisitos de envite normalmente emprender un multiplicador concrecion indicativo cuantas ocasiones debes apostar el monto de el bono antes de conseguir retirar las ganancias. Alla hallaras noticia sobre el porcentaje de reembolso, el margen maximum de reembolso, los juegos elegibles y no ha transpirado los requisitos de postura especialistas. Igualmente este tipo de bono seri\ufffda conocido como bono de agradecimiento o en la barra cashback eran los superiores bonos sobre casinos en internet que le permitian al usuario recobrar verdad cantidad de el recursos perdido.<\/p>\n

Unas los superiores cosas que poseen las bonos sobre casino es su variedad. Las terminos y no ha transpirado formas (T&C) resultan las normas que explican como trabaja efectivamente un bono de casino. Todos estos giros unicamente los deberias utilizar sobre la tragamonedas Gates of Olympus y estaran separados para semanas, entonces nunca las recibiras todos a la misma vez.<\/p>\n

Los bonos sobre casino constituyen promociones especiales cual los operadores se fabrican con a sus personas registrados. Sacar las superiores bonos acerca de euros hace posible retar en compania de bienes reales carente complicaciones de conversion. Esos bonos de bienvenida casino estan disenados con el fin de cero millas jugadores que demandan nuestro mejor explosion posible. Las bonos sobre audiencia resultan durante la reciente ocasion de maximizar tu cesion original acerca de cualquier casino en internet. Alrededor del casino bwin puedes recolectar empezando desde cinco eurillos asi\ufffd como alcanzar en un folleto mas profusamente sobre 4.160 juegos.<\/p>\n

Referente a Espana, practicamente los novios bonos desprovisto deposito incluyen campos sobre apuesta y limites maximos sobre retirada. Nuestro bono falto deposito elimina este peligro original, no obstante acostumbran a compensa esa ventaja con limites mas estrictos y no ha transpirado cientos promocionales mas pequenas. Los bonos desprovisto tanque acostumbran a encontrarse limites igual que maximum costo sobre ganancias retirables, plazos de verano para cumplir nuestro rollover (acostumbran a tres en 8 las jornadas) y restricciones sobre juegos indumentarias mercados. Nuestro preferiblemente bono sin tanque seri\ufffda el que brinda gran venta en el caso de que nos lo olvidemos tiradas de balde joviales requisitos sobre puesta bajos, plazos amplios de cumplirlos y no ha transpirado que pudiera llegar a ser actual en hacen de juegos favoritos. Con el fin de eximir las ganancias de un bono falto deposito deberias seguir llevando rollover, indicativo cuantas ocasiones debes emplazar el bono o bien las ganancias suin alcanzar arrinconar. Los casinos que usan bonos desprovisto tanque poseen una forma segura sobre empezar alrededor del casino en internet acerca de Argentina.<\/p>\n

Una forma bastante sencilla de hacerte con 100 giros sin cargo falto deposito seri\ufffda aceptando entre los promociones sobre audiencia. Si buscas cincuenta tiradas gratis sobre casino, se puede encontrarlas referente a Bwin, BacanaPlay, Gratogana, PartyCasino desplazandolo hacia el pelo Swift Casino, dentro de otras plataformas sobre juegos. El casino de Slingo, por ejemplo, ofrece a sus nuevos clientes 10 giros gratis sin deposito precedente. Hoy os andamos dialogando para casinos cual provee 100 giros gratuito sin tanque.<\/p>\n

Si detectas un casino que podria ser ilicito, comparte su noticia aqui<\/h2>\n

Dicha bonos se encuentre dirigido a individuos ahora registrados que deberian completado una verificacion sobre identidad. Levante dinero gratuito suele utilizarse conforme las condiciones especiales indicadas para el cirujano, proveyendo la magnifico vez de percibir diferentes juegos del casino. Los ganancias debidas en compania de las tiradas gratuitas tienen respetar campos de apuesta suin lograr retirarse.<\/p>\n

Solo para registrarte y no ha transpirado corroborar tu perfil, podrias designar dentro de dos modalidades de bono, segun hagas slots indumentarias juegos de casino. Casino Gran Madrid renueva su proposicion promocional joviales cualquier bono carente deposito de treinta\ufffd, disei\ufffdado con el fin de que te sea posible disfrutar de hacen de juegos favoritos falto urgencia sobre obtener dinero. El bono es la totalidad de algun pack de audiencia y no ha transpirado no seri\ufffda compatible en compania de otras bonos sobre bienvenida (ruleta, apuestas zapatillas de deporte en el caso de que nos lo olvidemos blackjack). Con el fin de descargar el bono y no ha transpirado conseguir retirar los ganancias, tiene que colocar cincuenta ocasiones el coste de el bono.<\/p>\n","protected":false},"excerpt":{"rendered":"

Claro que si, gran cantidad de operadores siguen aplicaciones moviles a los que puedes acceder Los bonos sobre recepcion tipicos reclaman tanque inicial. Tenemos que 5 sobre el vari?n ofrecian algun tipo de bono de balde desprovisto tanque, por cinco\ufffd hasta 10 giros gratuitos. Hallaras posibilidades con giros gratis, credito\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-28428","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/28428","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=28428"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/28428\/revisions"}],"predecessor-version":[{"id":28429,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/28428\/revisions\/28429"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=28428"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=28428"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=28428"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}