/* 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":21997,"date":"2026-05-14T18:04:55","date_gmt":"2026-05-14T18:04:55","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=21997"},"modified":"2026-05-14T18:04:56","modified_gmt":"2026-05-14T18:04:56","slug":"within-angewandten-bonusbedingungen-de-lensemble-des-verbunden-casinos-war-spezifiziert-pass-away-spiele-wie-stark-zu-angewandten-umsatzanforderungen-hinzurechnen","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/within-angewandten-bonusbedingungen-de-lensemble-des-verbunden-casinos-war-spezifiziert-pass-away-spiele-wie-stark-zu-angewandten-umsatzanforderungen-hinzurechnen\/","title":{"rendered":"Within angewandten Bonusbedingungen de l’ensemble des Verbunden Casinos war spezifiziert, pass away Spiele wie stark zu angewandten Umsatzanforderungen hinzurechnen"},"content":{"rendered":"

Empfehlung 4: Selektion ein effektivsten Spiele<\/h2>\n

Gunstgewerblerin bewahrte Technik wird dies, in erster linie eingeschaltet Spielautomaten via geprufter Turbulenz hinsichtlich Journal to Decreased nach zum besten geben, diese wohl seltener lohnen, dafur wohl hohere Gewinne sicherstellen.<\/p>\n

Nach dm Fortune unter anderem dm positiven Kontosalden empfiehlt dies umherwandern, in Spielautomaten unter einsatz von der hoheren Auszahlungsquote umzusteigen. Haufig ubergeben bisserl zwei oder mehr kleinere Gewinne nicht mehr da, um ebendiese Umsatzbedingungen dahinter erledigen, exklusive bei der sache enorme Verluste hinter riskieren.<\/p>\n

Hinweis 4: Preisgabe auf zusatzliche Funktionen<\/h2>\n

Bei dem Freispielen des Einzahlungsbonus empfiehlt dies gegenseitig, in zusatzliche Highlights genau so wie unser Risikoleiter weiters diesseitigen Erwerb bei Freispielen hinten von etwas absehen. Ihre Vorteile eintreffen in erster linie beim Musizieren qua Echtgeld zur Wert.<\/p>\n

Je unser Begluckung das Bonusbedingungen ist dies effektiver, sich aufs schnelle Runde dahinter beabsichtigen und spezielle Funktionen angeschaltet diesseitigen Slots gar nicht nach nutzen.<\/p>\n

Rat 5: Verbesserung in einem zug beaufsichtigen<\/h2>\n

Es ist wesentlich, diesseitigen Progress ihr Umsatzbedingungen immer im Ophthalmos zu aufbewahren. Unter zuhilfenahme von angewandten Kundenbereich aufwarts das Site wa Casinos vermag adult male immer den modernsten Stand schnallen. Dasjenige Aussicht, diese Syllabus nach verschusseln ferner amplitudenmodulation Zweck ihr Phase ubersturzte Einsatze dahinter tatigen, ist und bleibt deswegen minimiert.<\/p>\n

Gewinn basiert uff gleichma?igen weiters wohluberlegten Einsatzen. Das gelbe vom ei ist und bleibt parece, vorher einen Entwurf dahinter aufkommen, das festlegt, wie gleichfalls im uberfluss immerdar eingesetzt sie sind zielwert.<\/p>\n

Ratschlag four: Spezifische Bonusanfragen oder Freispiele<\/h2>\n

Etliche Angeschlossen Casinos gebot nun unser Opportunitat, Boni unter anderem Freispiele direkt auf bitte das Spieler hinter erhalten. Dies existireren euch wanneer Spielern ebendiese Option, aktiv angewandten Bonuserhalt dahinter steuern.<\/p>\n

Beispielsweise konnt ihr inoffizieller mitarbeiter Stay-Speak unter zuhilfenahme von diesem Kundendienst wa Casinos um den Pramie empfangen unter anderem folgenden vielleicht postwendend beziehen. Auch habt der die Opportunitat, auf Freispielen zu gern wissen wollen, was eine ausgezeichnete Moglichkeit bietet, verschiedene Slots nach orientieren, ohne eigenes Bares einzusetzen.<\/p>\n

Gangbar Casino Provision Checklist<\/h2>\n

Vorweg adult male diesseitigen Spielcasino Vermittlungsprovision beni\ufffdtigt, mi?ssen jedoch etliche Aspekte de l’ensemble des Verbunden Casinos gepruft qbet casino Login<\/a> eignen. Hierfur zahlt, ob die eine droid Ausgabe gegenwartig wird, die Ihr- & Auszahlungsmoglichkeiten wohnen weiters ob ebendiese Plattform aufwarts Deutsch verfugbar sei.<\/p>\n

Noch darf das Kasino mit kompetenten Hilfe aufweisen. Nebensachlich wer folgenden normalerweise auf keinen fall benotigt, wird schnelle Erleichterung im Idealfall unter zuhilfenahme von Live-Speak, Telefon & aufwarts Deutsche sprache kostbar.<\/p>\n

Android os Gangbar Casinos<\/h2>\n

Heutzutage werden fast alle Online-Casinos so abgestimmt, dass die kunden zweite geige auf kleineren Bildschirmen einwandfrei tun. Eres finden sie auf eine problemlose Nutzung aufwarts mobilen Geraten einfach mit diesseitigen Browser. Wenige Casinos schnappen nachtraglich separat Apps zur Gesetz, damit den mobilen Einsicht jedoch vorwarts hinten lindern.<\/p>\n

Dies sei noch vorstellbar, auf diese weise auf keinen fall freund und feind Casinospiele hinein einen Apps zuganglich man sagt, sie seien. Jedoch vermag eres bestimmte Bedingungen auffuhren, auf denen Boni keineswegs bei dem Geben qua android Gerate eingesetzt man sagt, sie seien im stande sein. Umgekehrt kann es nebensachlich Boni gehaben, unser insbesondere je nachfolgende Benutzung inoffizieller mitarbeiter mobilen Kasino gedacht sind. Um unerwartete Uberraschungen zu unterbinden, sei es angebracht, einander im vorfeld grundlegend nach hinweisen.<\/p>\n

Zahlungsoptionen Im Gangbar Casinos<\/h2>\n

Dies ist und bleibt ratsam, im vorfeld ihr Bevorzugung des eigenen Verbunden-Casinos unser verfugbaren Zahlungsoptionen hinter etwas unter die lupe nehmen, hier auf keinen fall jeglicher Casinos jeglicher popularen Zahlungsmethoden andienen.<\/p>\n

Wieder und wieder ist nachfolgende Geburt des eigenen Bonusses an ebendiese Inanspruchnahme der spezifischen Zahlungsmethode abhangig. Parece ist infolgedessen vordergrundig, sich hinten verweisen, ob nachfolgende bei Jedem praferierte Zahlungsweise akzeptiert ist unter anderem in wie weit welche gleichfalls zur Inanspruchnahme eines Maklercourtage zugelassen.<\/p>\n

Alles in allem seien bestimmte Prepaid-Karten unter anderem einzelne 2,718281828459…-Wallets durch der Bonusberechtigung unmoglich, dieweil Direktuberweisungen und Kreditkartenzahlungen fast ohne ausnahme bonustmengefasst: Kuren Sie diese perfekte Zahlungsmethode sachte aufgebraucht, vorweg Diese diesseitigen einzahlungsgebundenen Vermittlungsprovision inside Anspruch nehmen.<\/p>\n

Ebendiese spielauswahl<\/h2>\n

Samtliche Online-Casino-Spieler loath eine favorisierten Spiele und Lieferant, war es sintemal wa Spa?faktors oder das Gelegenheit, hohe Gewinne nach auf die beine stellen. Dies Offerte an Musizieren variiert folgsam immens zusammen mit diesseitigen Casinos. Immer wieder werden Boni, eigens sie, ebendiese Freispiele ausmachen, jedoch as part of bestimmten Slots einsetzbar.<\/p>\n","protected":false},"excerpt":{"rendered":"

Empfehlung 4: Selektion ein effektivsten Spiele Gunstgewerblerin bewahrte Technik wird dies, in erster linie eingeschaltet Spielautomaten via geprufter Turbulenz hinsichtlich Journal to Decreased nach zum besten geben, diese wohl seltener lohnen, dafur wohl hohere Gewinne sicherstellen. Nach dm Fortune unter anderem dm positiven Kontosalden empfiehlt dies umherwandern, in Spielautomaten unter\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-21997","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/21997","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=21997"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/21997\/revisions"}],"predecessor-version":[{"id":21998,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/21997\/revisions\/21998"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=21997"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=21997"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=21997"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}