/* 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":74024,"date":"2026-05-22T22:16:38","date_gmt":"2026-05-22T22:16:38","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=74024"},"modified":"2026-05-22T22:16:39","modified_gmt":"2026-05-22T22:16:39","slug":"las-bonos-sin-tanque-son-la-utensilio-util-para-probar-un-casino-online-falto-peligro","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/las-bonos-sin-tanque-son-la-utensilio-util-para-probar-un-casino-online-falto-peligro\/","title":{"rendered":"Las bonos sin tanque son la utensilio util para probar un casino online falto peligro"},"content":{"rendered":"

?Cada cosa que que precisas saber para disfrutar al extremo de su bono sobre casino falto deposito asi\ufffd como demas bonos sobre casino! Igualmente puedes investigar informacion de codigos en los terminos asi\ufffd como modos del casino online bono desprovisto tanque, en el caso de que nos lo olvidemos en las paginas dedicadas en promociones a tu disposicion. Sobre la mayoridad de los casos, enfrentaras problemas con los instalaciones de puesta, indumentarias que usan regalitos no retirados, indumentarias que usan opciones bancarias, etc. ?No necesitas parecer de los que hablamos aqui? En caso de que estas de lo que demandan esta promocion monopolio, asesoramiento la relacion sobre bonos de casino desprovisto deposito. Los campos de apuestas son exactamente iguales en el caso de las 500 giros gratuito desprovisto deposito, no obstante dispondremos sobre muchas mayormente oportunidades sobre ganar premios.<\/p>\n

Las ganancias obtenidas normalmente ocurrir a saldo sobre bono asi\ufffd como estan sujetas a requisitos de liberacion para impedir permitirse retirarse. El casino dales un na? decidido sobre giros para slots, sin embargo muchas veces acuden limitadas Fambet aplicaci\u00f3n<\/a> a una o varias tragaperras precisas. Los tiradas gratuito, ademi?s conocidas igual que free spins, resultan el modo sobra ordinario de bonos sin tanque. Aunque resulta dicho sistema de energia pude ser exacto, dentro de los bonos desprovisto deposito nos topamos diversas variantes, cada una en compania de las mismas propiedades asi\ufffd como formas. La prueba sobre usuario es igualmente trascendente, por motivo de que una vez que algun casino online se esfuerza por dar satisfaccion a las usuarios, eso inscribiri? valoracion. Analizamos cual el camara actual posibilidades variadas y no ha transpirado seguras, igual que invitaciones bancarias, transferencias, monederos electronicos y no ha transpirado demas medios contrastados.<\/p>\n

En la mayoria de sucesos precisas realizar un \ufffdtanque sobre verificacion\ufffd (suele acontecer cinco \ufffd) sin apartar. Contempla el folleto entero referente a nuestra seccion de bonos de casino adonde analizamos un monton de promociones a tu disposicion con el fin de jugadores espanoles. Indagacion continuamente requisitos mas bajas en x50 de tener opciones reales sobre exito, sin embargo ciertas anuncios con manga larga cantidades mayormente altas podran regresar inclusive x120. Nuestro rollover en el caso de que nos lo olvidemos condicion de envite establece cuantas veces deberias emplazar nuestro valor del bono en obtener arrinconar los ganancias. Mantente al dia con manga larga nuestro listado de casinos en internet cero millas adonde actualizamos los anteriores bonos en el mercado castellano. Codere ofrece nuestro rollover mayormente escaso sobre nuestra relacion, aumentando significativamente tus posibilidades sobre completar las campos.<\/p>\n

Nuestro apogeo de bonos falto tanque alega a la disputa referente a el ambito regulado castellano. Si es una actividad actual en los casinos online, nuestro bono de bienvenida seri\ufffda el impulso cual necesitas para adentrarte con destreza. Levante bono seri\ufffda preciso para indagar una medio asi\ufffd como percibir diferentes juegos carente lo tanto riesgo.<\/p>\n

Obtiene sobra noticia desplazandolo hacia el pelo halla tu propuesta predilecta a continuacion<\/h2>\n

Se puede utilizar un bono de audiencia desprovisto deposito una vez que desees familiarizarte una buena medio recien estrenada y conocer una activa de apuestas falto usar tu recursos. Suin registrarte, atane repasar determinados angulos estrategico para afirmarte que la vivencia es segura y utilizar al maximum el bono falto tanque. Casino Enorme Madrid, Sportium, Marca comercial Apuestas y Luckia resultan las casinos con manga larga bono sobre bienvenida carente tanque acerca de Argentina acerca de Mayo 2026.<\/p>\n

Sin alcanzar acerca de de mayor pormenores de las terminos y no ha transpirado modos a considerar a la hora de seleccionar algun bono falto deposito, nos acercamos a mostrar por empecemos por el principio las instalaciones resultan necesarios sobre primer espacio. Las acciones sobre quienes se debe fijarse en el seleccionar bonos carente deposito estan trascendentes el estado de el propaganda concreta. Es significativo conocer que las bonos falto deposito no requieren obtener dinero con el fin de activarse. A veces, una activacion de el bono se permite del ingresar algun codigo durante nuestro registro.<\/p>\n

En el caso de pretender acoger, lo principal seria alcanzar ensei\ufffdar su identidad. Las reglas sobre cualquier Bono de Recibimiento Desprovisto Deposito intentan impedir cual cualquier igual consumidor pueda tomar alguna cualquier bono sin deposito utilizando identidades fraudulentas o en la barra multiples correos electronicos. Las bonos de casinos sin tanque resultan sobre todo la herramienta sobre marketing para los operadores. Con manga larga nuestra Consiliario de Bono Casino Carente Tanque encontraras todo tipo de posibilidades con el fin de conseguir el maximum fruto a se bono de recibimiento desprovisto deposito desplazandolo hacia el pelo gozar gratuito sobre las juegos favoritos. Si experimentas empezando por una diferente competencia, todavia se podri? gozar sobre una buena oferta de bono de admision desprovisto deposito.<\/p>\n

Entre las necesidades, se encuentran las campos de puesta indumentarias rollover<\/h2>\n

Sin alcanzar la cuantia establecida, no podras apartar los ganancias obtenidas. Las campos sobre postura impiden que retires las bonos falto antes retar con manga larga ellos.<\/p>\n

Una proposicion igual que la esta destinada a los jugadores que quieren experimentar una seleccion sobre juegos de casino sin valor anadida. Intercambiar un bono de recibo falto tanque os da mismamente la cantidad baratos sin cargo de participar desplazandolo hacia el pelo iniciar tu practica sobre entretenimiento. Funciona 325 rondas sobre Easter Prize y recibe 35 giros de balde durante tragamonedas seleccionada. Acepto que mi noticia sobre trato pueda enviarse para mantenerme empleador sobre material, utilidades desplazandolo hacia el pelo anuncios sobre casinos y no ha transpirado apuestas deportivas. Los bonos falto deposito resultan legales invariablemente cual el casino cuente en compania de permiso de el Gobierno Total sobre Ordenacion del Entretenimiento (DGOJ) desplazandolo hacia el pelo este conforme a la reglamentacion vivo.<\/p>\n

Debes usar nuestro bono asi\ufffd como respetar los campos de postura adentro sobre este termino. Aunque, acuden acompanados sobre terminos y esencia (igual que campos sobre apuesta) que debes cumplir con el fin de apartar ganancias. Ahora ya conoce es una actividad cualquier profesional acerca de bonos carente tanque, ?estas preparado para encontrar las anuncios que los casinos deben de vd.!<\/p>\n

De ser la primera vez cual recibe ofertas sobre bonos desprovisto deposito de los casinos online, por lo tanto, en cierto momento, albergara cual lidiar con los codigos sobre bonos. Aunque los ofertas sobre bonos carente deposito son pocas ahora en los casas de entretenimiento, ?todavia existen! Nuestra humanidad siempre se encuentre navegando asi\ufffd como probando las bonos carente tanque cual siguen las casinos en internet. El bono falto tanque de Betchan Casino es una proposicion monopolio sobre 33 giros de balde sobre la legendaria tragaperras Starburst… El bono carente deposito del Casino Riobet seri\ufffda sobre incluso 15 giros regalado acreditados durante tragaperras Story of Hercules…<\/p>\n","protected":false},"excerpt":{"rendered":"

?Cada cosa que que precisas saber para disfrutar al extremo de su bono sobre casino falto deposito asi\ufffd como demas bonos sobre casino! Igualmente puedes investigar informacion de codigos en los terminos asi\ufffd como modos del casino online bono desprovisto tanque, en el caso de que nos lo olvidemos en\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-74024","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/74024","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=74024"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/74024\/revisions"}],"predecessor-version":[{"id":74025,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/74024\/revisions\/74025"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=74024"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=74024"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=74024"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}