/* 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":140275,"date":"2026-06-10T17:38:02","date_gmt":"2026-06-10T17:38:02","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=140275"},"modified":"2026-06-10T17:38:02","modified_gmt":"2026-06-10T17:38:02","slug":"jeux-casino-casinova","status":"publish","type":"post","link":"https:\/\/klecet.edu.in\/alumni\/jeux-casino-casinova\/","title":{"rendered":"Examen de six mois sur les parties de croupier en direct au Casinova Casino en Suisse"},"content":{"rendered":"
\n

Les jeux casino casinova<\/a> de croupier en direct ont transform\u00e9 la fa\u00e7on de jouer en ligne. Nous avons pass\u00e9 six mois \u00e0 \u00e9valuer ceux du Casinova Casino depuis la Suisse. Ce test long nous a donn\u00e9 le temps de appr\u00e9cier la vari\u00e9t\u00e9 des jeux, la technique, le contact avec les croupiers et l’adaptation aux joueurs suisses. Accessible via sa plateforme, Casinova Casino vise clairement le march\u00e9 helv\u00e9tique. Nous avons tout pass\u00e9 au crible pour vous donner un avis complet. Vous d\u00e9couvrirez ici nos notes sur la stabilit\u00e9 des connexions, la clart\u00e9 des vid\u00e9os et l’ambiance qui r\u00e8gne aux tables. Ces points font toute la diff\u00e9rence entre une simple partie et un moment qui rappelle le vrai casino.<\/p>\n

Service client et soutien technique<\/h2>\n

Un bon support est essentiel, notamment en live o\u00f9 un probl\u00e8me peut survenir en pleine partie. Casinova Casino offre une assistance en fran\u00e7ais, allemand et anglais. On peut les contacter par chat en direct, email ou t\u00e9l\u00e9phone. Durant notre test, le chat donnait une r\u00e9ponse en moyenne en moins de cinq minutes. Les agents sont qualifi\u00e9s. Ils savent r\u00e9soudre un souci technique sur un flux vid\u00e9o aussi bien qu’une question sur un compte. Nous avons imit\u00e9 une coupure de connexion. La solution fournie a \u00e9t\u00e9 rapide et juste. Une FAQ exhaustive sur les jeux live est aussi disponible. Cette efficacit\u00e9 renforce la fiabilit\u00e9 de la plateforme et permet de jouer l’esprit tranquille.<\/p>\n

M\u00e9thodes de paiement et protection<\/h2>\n

Pour un joueur suisse, pouvoir employer ses moyens de paiement usuels est essentiel. Casinova Casino proc\u00e8de avec soin. Nous avons r\u00e9alis\u00e9 des versements et retraits via PostFinance, Twint, et des cartes de cr\u00e9dit helv\u00e9tiques. Les retraits sont g\u00e9n\u00e9ralement r\u00e9alis\u00e9s en moins de 24 heures. La plateforme admet aussi les cryptomonnaies, le Bitcoin par exemple. Les frais de transaction sont absents ou tr\u00e8s bas. Les limites de transaction sont adapt\u00e9es aux attentes locales. La s\u00e9curit\u00e9 s’appuie sur un chiffrement SSL de niveau bancaire. Nous nous sommes sentis en s\u00e9curit\u00e9 pendant ces six mois. Cette adaptabilit\u00e9 et cette solidit\u00e9 permettent de se concentrer sur sa partie, sans tracas administratif.<\/p>\n

Offre et conditions connexes<\/h2>\n

Casinova Casino a des avantages pens\u00e9es pour le live. Nous avons examin\u00e9 l’offre de bienvenue, qui comprenait des tours gratuits sur des tables en direct, ainsi que les matchs de d\u00e9p\u00f4t r\u00e9guliers. Chaque semaine am\u00e8ne son lot d’animations, comme un cashback sur les pertes ou des tournois sp\u00e9ciaux. Il faut porter une attention aux conditions de mise li\u00e9es \u00e0 ces bonus. Elles sont indiqu\u00e9es clairement et semblent raisonnables compar\u00e9 \u00e0 ce qui se fait ailleurs. Les d\u00e9lais pour les utiliser et les jeux autoris\u00e9s sont aussi pr\u00e9cis\u00e9s. Cette transparence emp\u00eache les d\u00e9convenues. Bien utilis\u00e9es, ces offres apportent du piment et des chances de gagner, sans nuire \u00e0 l’\u00e9quit\u00e9 du jeu.<\/p>\n

L’analyse de la s\u00e9lection de jeux<\/h2>\n

Le choix est vaste. Casinova Casino propose les grands classiques et des versions plus innovantes. Nous avons jou\u00e9 au blackjack, \u00e0 la roulette europ\u00e9enne et am\u00e9ricaine, au baccara. Nous avons aussi test\u00e9 des jeux comme Lightning Roulette ou Ultimate Texas Hold’em. Des \u00e9diteurs comme Evolution Gaming apportent leur savoir-faire et diversifient les styles. Les mises accept\u00e9es s’\u00e9tendent du petit pari au budget cons\u00e9quent. Nous avons salu\u00e9 de trouver des tables avec des croupiers parlant fran\u00e7ais ou allemand, une attention au march\u00e9 suisse. Tous les mois, de nouvelles tables \u00e0 th\u00e8me apparaissent. Cela pr\u00e9vient la lassitude, ce que nous avons observ\u00e9 pendant toute la dur\u00e9e de notre test.<\/p>\n

L’ambiance et le cadre des tables<\/h2>\n

On est directement plong\u00e9 dans l’ambiance. La qualit\u00e9 vid\u00e9o est claire, m\u00eame aux heures de pointe. Les croupiers sont pros et aimables. Ils saluent les joueurs, lancent la conversation, ce qui cr\u00e9e une atmosph\u00e8re d\u00e9tendue. Les studios sont bien agenc\u00e9s, on se penserait dans un \u00e9tablissement r\u00e9el. Gr\u00e2ce \u00e0 divers angles de cam\u00e9ra, on ne loupe aucun d\u00e9tail de l’action. Le son et l’image sont parfaitement synchronis\u00e9s avec les donn\u00e9es du jeu, sans d\u00e9lai g\u00eanant. Le chat en direct permet de \u00e9changer au croupier et aux autres joueurs. Cette sociabilit\u00e9, absente des machines \u00e0 sous, est un grand plus.<\/p>\n

Pr\u00e9sentation et exp\u00e9rience utilisateur<\/h2>\n

On se rep\u00e8re ais\u00e9ment, sur ordinateur comme sur t\u00e9l\u00e9phone. Atteindre une table demande peu de temps. Les cat\u00e9gories par genre, mise minimale ou d\u00e9veloppeur fonctionnent. L’interface est \u00e9pur\u00e9e, sans pubs intrusives, pour se focaliser sur le jeu. Les instructions sont d\u00e9taill\u00e9es de mani\u00e8re limpide, des donn\u00e9es en temps r\u00e9el aident \u00e0 progresser. Les messages pour les tours gratuits ou offres sont visibles sans exc\u00e8s. L’optimisation \u00e0 tous les appareils est parfaite : on distingue tr\u00e8s bien les figures et les plaques. Cette conception offre le jeu enrichissant, que l’on soit d\u00e9butant ou habitu\u00e9.<\/p>\n

Stabilit\u00e9 technique et stabilit\u00e9<\/h2>\n

Sans une technique solide, l’exp\u00e9rience live s’essouffle. La plateforme de Casinova Casino s’est montr\u00e9e stable pendant nos six mois. Les connexions depuis la Suisse sont satisfaisantes, avec un retard minime qui ne perturbe pas pour miser ou prendre une d\u00e9cision. La qualit\u00e9 vid\u00e9o reste constante, sans baisses de r\u00e9solution soudaines. Nous avons pouss\u00e9 le test : sessions longues, changement de r\u00e9seau Wi-Fi. Aucune d\u00e9connexion intempestive. Cette fiabilit\u00e9 est essentielle. Elle assure le d\u00e9roulement du jeu et la confiance du joueur, surtout quand les enjeux sont importants. C’est un point fort pour l’op\u00e9rateur.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"

Les jeux casino casinova de croupier en direct ont transform\u00e9 la fa\u00e7on de jouer en ligne. Nous avons pass\u00e9 six mois \u00e0 \u00e9valuer ceux du Casinova Casino depuis la Suisse. Ce test long nous a donn\u00e9 le temps de appr\u00e9cier la vari\u00e9t\u00e9 des jeux, la technique, le contact avec les\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-140275","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/140275","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/comments?post=140275"}],"version-history":[{"count":1,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/140275\/revisions"}],"predecessor-version":[{"id":140276,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/140275\/revisions\/140276"}],"wp:attachment":[{"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=140275"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=140275"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=140275"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}