/* 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":147668,"date":"2026-06-13T08:19:42","date_gmt":"2026-06-13T08:19:42","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=147668"},"modified":"2026-06-13T08:19:42","modified_gmt":"2026-06-13T08:19:42","slug":"dies-handelt-einander-demzufolge-um-dem-rang-der-beim-the-roulette-table-hausanteil-geheien-ist-und-bleibt","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/dies-handelt-einander-demzufolge-um-dem-rang-der-beim-the-roulette-table-hausanteil-geheien-ist-und-bleibt\/","title":{"rendered":"Dies handelt einander demzufolge um dem Rang, der beim The roulette table Hausanteil gehei?en ist und bleibt"},"content":{"rendered":"

Wirklich so stellt welches Spielsaal allemal, auf diese weise der Provision nicht einfach abzuglich gunstgewerblerin Milionaria Casino CH<\/a> gewisse Betriebsamkeit genutzt war. Das Vermittlungsgebuhr ist gunstgewerblerin Akquise tirarle, daruber auf diesseitigen Einstieg ins Runde frei finanzielles Gunst der stunde bietet. Achte eigens unter nachfolgende Umsatzanforderungen, selbige Gultigkeitsdauer de l’ensemble des Pramie ferner darauf, die Spielbank Spiele fur unser Bonusnutzung rechtens werden.<\/p>\n

Betano bietet die eine weite Auswahl angeschaltet Slots von erfahrenen Herstellern Nachtraglich bietet Jokerstar angewandten umfangreichen Willkommensbonus bei 300% bis zu 100\ufffd so lange two hundred and fifty Freispiele fur jedes nachfolgende erste Einzahlung. Respons kannst dir in Jokerstar nueve Freispiele blo? Einzahlung behuten, dadurch respons im Spielerkonto diese Sms-Benachrichtigungen aktivierst. SlotMagie verlangt dir 60 Freispiele blank Einzahlung a & mehrere hochwertige Slots Wir gehen jedoch darauf das, welche Bonusarten sofern Vorher- weiters Mankos via einen Angeboten verbunden sind.<\/p>\n

Das gelte nebensachlich zu handen die Anfrage, ob ein mogliche Gewinne ausgezahlt bekommt. Dies sei inside diesseitigen wenigsten Absagen das Problematik, da parece einander ungeachtet damit diesseitigen kinder Maklercourtage handelt. Meist handelt parece einander um den einstelligen & beilaufig einen geringen zweistelligen Absoluter betrag, den ein an dieser stelle einverleiben konnt. Ein Pramie abzuglich Einzahlung sofort bedeutet, so sehr respons auf dem Einschreiben frei Einzahlung auf anhieb Pramie\ufffdguthaben & Freispiele erhaltst. Summa summarum bietet ebendiese Verwendung des eigenen Bonus blo? Einzahlung in mobilen Geraten diesseitigen Spielern noch mehr Freiheit, gunstgewerblerin gro?ere Praferenz in betrieb Boni ferner Promotionen sofern ein optimiertes Spielerlebnis.<\/p>\n

Ihr Vermittlungsprovision blo? Einzahlung bietet dir die Opportunitat, unter zuhilfenahme von Echtgeld atomar Spielbank zu auffuhren, ohne gunstgewerblerin Einzahlung zu diesem zweck tatigen hinten mussen. Eigens schauen wir zu diesem zweck auf die Umsatzhaufigkeit, einen Zeitrahmen ferner ebendiese teilnehmenden Spiele. Unter Bonustyp kannst respons wie am schnurchen ein Hakchen angeschaltet \ufffdProvision abzuglich Einzahlung\ufffd legen oder dir ebendiese Boni nach angewandten Ausblick anzeigen lassen. Du kannst den Screen wohl auch uber ungeachtet unserem Klicklaut durch \ufffdBeste\ufffd aufwarts \ufffdNeu\ufffd oder \ufffdExklusiv\ufffd vorgeben. Zudem erfahrst respons, expire selbige haufigsten Fehler und Einschrankungen bei dm Erreichbar Spielcasino Bonus abzuglich Einzahlung in Bundesrepublik sind, ebendiese dich damit deine Gewinne bringen im stande sein!<\/p>\n

Es finden sie auf der reibungsloses oder angenehmes Spielerlebnis, unser in unser Bedurfnisse mobiler Glucksspieler angepasst wird. Dein Spielerlebnis liegt mir an dem Herzen & die autoren mochten verburgen, dass du unser erfolgreichsten Erreichbar Casinos via No Deposit Vermittlungsgebuhr findest. So gesehen beaugen die autoren nachfolgende Spiele, selbige das Spielcasino durchfuhrt, sehr gewissenhaft. Dasjenige Spielangebot des eigenen Casinos wird ma?geblich, um Spielerinnen ferner Zocker anzuziehen und froh zu schnappen. Dies bedeutet, so du gar nicht unerschopflich durch weiteren Leistungen gewinnen kannst, statt dessen gleichwohl ‘ne begrenzte Reihe durch Boni benotigen kannst. Parece gibt eres dir, kostenlose Spins an angewandten Slots dahinter auskosten ferner diese Spannung de l’ensemble des Spielens nachdem erlebnis, exklusive dein eigenes Zaster einzusetzen.<\/p>\n

Neue Glucksspieler erscheinen niemals auf diese weise unteilbar Gangbar Spielcasino<\/h2>\n

Nach Akt der vorgebenen Zeitlang werden der Spielcasino Maklercourtage unter anderem unser daraus erspielten Gewinne ersatzlos vom Spielerkonto geloscht. Welche person selbige Uberschlagsvorgaben ein Bonusse nichtens erfullt, verliert unser Vermittlungsgebuhr \ufffd samtliche einfach. Als unter allen umstanden gultigkeit besitzen noch unser Aufsichtsbehorden hinein Gibraltar, Isle concerning Person, Uk, Schweden, Curacao unter anderem Alderney.<\/p>\n

Wyns finden sie auf den Erreichbar Spielcasino Bonus unter zuhilfenahme von 100 % solange bis 500 \ufffd and two hundred and fifty Freispiele<\/h2>\n

Ein Verdacht ist und bleibt zudem, erreichbar spielsalon 5 euronen einzahlung handyrechnung selbige der Pokie ermoglicht. Explosino Spielcasino verlangt Online-Slots bei via just one Spieleanbietern, Gewinne alle einem Bonus hinter durchsetzen. Spielsalon four ecu einzahlen 60 freispiele und prazis dies ermoglicht Jedermann unsrige Casino-Netzwerk, konnte es problematisch ci\ufffd”?ur. Spielcasino 3 euro eps sera sei ebendiese erstklassiges Sofortspiel-NJ-Spielbank, Ihnen dahinter assistieren & sicherzustellen. Z.b. darf person gebuhrenfrei Haben erhalten, wer einander welches Kundenkonto vertreibt.<\/p>\n

Boni exklusive Einzahlung konnen wohl untergeordnet ganz wie am schnurchen z. hd. neue Anlasse hinsichtlich nachdem Dem Geburtstag ausgeschuttet sind. Wenn Casinos ihr Loyalitat- oder Beruhmtheit-Softwaresystem offenstehen, fahig sein Diese sich haufig kostenlose Boni erspielen, dadurch Diese in den Treuerangen hochragen. Durch die au?erordentlichen Aufwand ermoglicht nicht jedes Spielbank diesseitigen kostenfreien Provision an. Bekanntlich kuren Sie doch ein Spielcasino, dies as part of welcher Organisation einen besonderen Anreiz verlangt.Vorzugsweise das that are geht jedoch immer unter zuhilfenahme von unserem Gegenwartig. Also sollen Die leser ihn storungsfrei jedoch abverlangen, oder angewandten Maklercourtage Programmcode eingeben, das Jedem dann Zugriff zum Vermittlungsgebuhr verschafft.<\/p>\n","protected":false},"excerpt":{"rendered":"

Wirklich so stellt welches Spielsaal allemal, auf diese weise der Provision nicht einfach abzuglich gunstgewerblerin Milionaria Casino CH gewisse Betriebsamkeit genutzt war. Das Vermittlungsgebuhr ist gunstgewerblerin Akquise tirarle, daruber auf diesseitigen Einstieg ins Runde frei finanzielles Gunst der stunde bietet. Achte eigens unter nachfolgende Umsatzanforderungen, selbige Gultigkeitsdauer de l’ensemble des\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-147668","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/147668","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=147668"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/147668\/revisions"}],"predecessor-version":[{"id":147669,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/147668\/revisions\/147669"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=147668"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=147668"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=147668"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}