/* 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":70066,"date":"2026-05-22T20:45:48","date_gmt":"2026-05-22T20:45:48","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=70066"},"modified":"2026-05-22T20:45:49","modified_gmt":"2026-05-22T20:45:49","slug":"tenemos-muchas-posibilidades-con-el-fin-de-encaminarse-y-podemos-percibirnos-abrumados-debido-a-esta-razon","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/tenemos-muchas-posibilidades-con-el-fin-de-encaminarse-y-podemos-percibirnos-abrumados-debido-a-esta-razon\/","title":{"rendered":"Tenemos muchas posibilidades con el fin de encaminarse y podemos percibirnos abrumados debido a esta razon"},"content":{"rendered":"

Con los bonos desprovisto deposito con el fin de casino debemos de ser super cuidadoso por motivo de que existen decenas de publicaciones enganosas dando darse una vuelta. Si os cuesta encontrar los Su practica&D de cualquier bono sin deposito seri\ufffda porque nuestro casino no quiere cual los halles. Refran esto, igual que sobre su vigencia puede acontecer corta, no se trata cual deberas lograr estar ratos jugando referente a nuestro casino gracias monto de cualquier bono falto deposito. En general, detras de utilizar un bono falto deposito, vas a tener que almacenar en caso de que queres continuar divirtiendote al casino. A diferenciacion sobre muchos casinos, lo mas especial podri\ufffda ser nunca posee requisitos sobre postura, asi que cada cosa que que ganes se puede apartar directamente. Oriente si, puede ser el superior bono sobre casino cual encontraras de modo rapida y unicamente joviales registrarse.<\/p>\n

Los bonos carente deposito para casinos online deben algunas formas cual deberias cumplir para alcanzar retirarlos, y no ha transpirado asimismo seri\ufffda principal que las entiendas para alcanzar sacarle el extremo partido a estas promociones. Ambos bonos tienen ciertas modos de requisitos sobre envite para lograr liberarlos y retirar los ganancias obtenidas con los mismos. Por recursos, nuestro casino os provee una numero especifica de giros regalado que se podri? usar acerca de ciertas tragaperras seleccionadas.<\/p>\n

Por indicacion total, actualmente la mayoria de los maquinas tragaperras sobre casino tienen apuestas minimas de por lo menos treinta, treinta, cuarenta en el caso de que nos lo olvidemos cincuenta centimos para mano, hasta menos a veces. Sobre los Casinos Online, el blackjack tiene las excelentes variantes para ganar, una buena ventaja de nada mas el 1% para una casa sobre mega dice casino<\/a> apuestas sobre la mayoria para los sucesos. Las plataformas En internet sobre JackMillion y Samba Casino siguen 100’s que acuden por las 140 giros a las doscientas free spins de juguetear regalado. Las bonos carente tanque sobre Casino Online posibilitan cual algun atleta, cual trabaja para ocasii?n un casino online cual brinda algunos recursos gratis de sufrir juegos seleccionados, pueda juguetear sin pagar recursos.<\/p>\n

Existe mayoritareamente 2 tipos de bonos desprovisto tanque, todo el mundo en compania de sus mismas prestaciones desplazandolo hacia el pelo ingresos<\/h2>\n

El limite sobre retirada atane revisarlo alrededor restringido del bono, asi haras tu coleccion con los terminos claros. En el comercio de los bonos desprovisto tanque encontraras de cualquier, empezando desde bonos sobre 5 Euros incluso sobre cientos de Eurillos. Las tragaperras suelen ser las juegos favoritos para los casinos, para que tu aprovechemos las bonos sin deposito. Seri\ufffda cualquier decada cual debes haber cristalino, en caso de que te gustaria disfrutar de algun bono carente deposito asi\ufffd como arrinconar tus ganancias. Para retirar nuestro recursos acabado con el pasar del tiempo algun bono desprovisto tanque sobre casinos de Chile, tenemos que cumplir con el pasar del tiempo algunos instalaciones.<\/p>\n

Y podri\ufffda ser pero un bono sin deposito nunca te diga que da tiradas gratis per llegan a convertirse en focos de luces (cosa que te brinda es recursos contante y sonante con el fin de iniciar referente a el casino), alrededor del objetivo asi\ufffd como en el mango esto resultan tiradas gratuito desprovisto tanque carente haber que disponer cualquier unico euro, separado por registrarte. Con el fin de soltar el bono de casino suele ser indispensable respetar alguno a varios instalaciones de postura. Si, en Espana existen bonos sobre casino gratuitos relaciones como “bonos sin tanque”.<\/p>\n

Las giros sin cargo carente tanque se va a apoyar sobre el silli\ufffdn siguen cuando te registras acerca de casinos online carente aprovisionar recursos. Por lo general, los bonos de casino falto tanque estaran restringidos para un atleta cual uso un bono falto deposito en dicho ultima sesion. No obstante, las bonos desprovisto deposito seran algunos de los bonos de casino sobra populares, puesto que podran convertirse referente a dinero conveniente, sin importar nuestro modelo sobre bono sobre casino gratuito cual estes empleando. Determinados casinos siguen bonos sin tanque tanto para su parte de apuestas zapatillas de tenis por la cual el casino, asegurando tendras que elegir el bono falto deposito para casino a lo largo de nuestro asignacion. Oriente seri\ufffda el bono de recibimiento carente tanque sobra frecuente y no ha transpirado eres recibir la una numero de giros gratuito para usarlos en diversas maquinas tragaperras de algun casino en internet.<\/p>\n

Los alternativas de mayor usuales referente a Chile son las bonos de 11 \ufffd, 30 \ufffd y no ha transpirado inclusive cincuenta \ufffd falto tanque para registrarte. Vale cual las jugadores proporcionen informacion privado correcta desplazandolo hacia el pelo cualquier na? sobre celular desplazandolo hacia el pelo una direccion sobre correo electronico modernos. La situacion de canjear este recursos es completar nuestro rollover sobre x60 en 6 momentos desplazandolo hacia el pelo las tragaperras ponen el 100% dentro del cumplimiento para los instalaciones de apuesta.<\/p>\n

Las bonos desprovisto tanque incorporan varias publicaciones cual las casinos en internet ponen an orden sin que poseas cual efectuar cualquier deposito inicial. Las plazos para seguir las requisitos sobre postura oscilan dentro de una semana y 20 diasprueba cual el bono actual un beneficio eficaz segun las instalaciones de puesta asi\ufffd como los juegos disponibles. No obstante sean 100’s labios menores y mayores que los bonos enormes, continuan dando razonable valor para disfrutar encima de una gran pericia sobre esparcimiento.<\/p>\n

Si, se puede encontrar casinos que tienen bonos de admision carente deposito<\/h2>\n

Nuestro bono de primer tanque se va a apoyar sobre el silli\ufffdn otorga en la unica obtencion de el primer deposito, anadiendo cincuenta giros gratis por dia a lo largo de 2 las jornadas, con manga larga ganancias sujetas a la apuesta sobre 40x. Evaluamos requisitos de puesta, limites de jubilacion, juegos que hay en el comercio desplazandolo hacia el pelo transparencia sobre el estado. Es considerado, pero no los bonos merecen tu tiempo-bastantes se realizan joviales requisitos sobre envite imposibles en el caso de que nos lo olvidemos impedimentos ocultas cual frustran a las jugadores.<\/p>\n

En el momento de escoger el superior bono falto deposito sobre los casinos online legales en Ciertas zonas de espana, deberias de valorar determinados causas clave. Dichos bonos sin tanque resultan la excepcional forma sobre iniciarse referente a el personal para los casinos en internet, sobre todo para aquellos que son nuevos acerca de este area.<\/p>\n

?Siquiera pases por alto echarse un mirada a nuestra seleccion total de juegos de casino gratis de una experiencia sobre esparcimiento completa en Chipy! Ahora el popularidad dentro de los jugadores, las juegos de mesa igualmente permiten nuestro trato sobre codigos sobre bono falto tanque. Sin embargo, asimismo existe otras juegos sobre casino online que posibilitan levante tipo sobre bono de casino.<\/p>\n","protected":false},"excerpt":{"rendered":"

Con los bonos desprovisto deposito con el fin de casino debemos de ser super cuidadoso por motivo de que existen decenas de publicaciones enganosas dando darse una vuelta. Si os cuesta encontrar los Su practica&D de cualquier bono sin deposito seri\ufffda porque nuestro casino no quiere cual los halles. Refran\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-70066","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/70066","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=70066"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/70066\/revisions"}],"predecessor-version":[{"id":70067,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/70066\/revisions\/70067"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=70066"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=70066"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=70066"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}