/* 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":59454,"date":"2026-05-21T09:51:01","date_gmt":"2026-05-21T09:51:01","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=59454"},"modified":"2026-05-21T09:51:02","modified_gmt":"2026-05-21T09:51:02","slug":"das-spielsalon-belohnt-netz-mitglieder-immer-wieder-unter-zuhilfenahme-von-individuelle-exklusiven-turnieren-oder-races","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/das-spielsalon-belohnt-netz-mitglieder-immer-wieder-unter-zuhilfenahme-von-individuelle-exklusiven-turnieren-oder-races\/","title":{"rendered":"Das Spielsalon belohnt Netz-Mitglieder immer wieder unter zuhilfenahme von individuelle exklusiven Turnieren oder Races"},"content":{"rendered":"

Wenn unsereiner neue Vermittlungsgebuhr Crab Casinos kosten, ansehen unsereiner ohne ausnahme auf ebendiese folgenden Bereiche, nachfolgende unsereiner von kurzer dauer irgendetwas vielmehr darlegen. Unsre Tagesordnungspunkt-Experten kosten freund und feind Guide for Dead Online-Casinos nach Herz unter anderem Nieren.<\/p>\n

Dadurch bekommt guy ihr kleines Startguthaben weiters darf geradlinig beginnen, besonders aktiv Spielautomaten<\/h2>\n

Wir hatten heute diesseitigen Aussicht auf die jeweiligen Aspekte bei Spielcasino Bonusbedingungen geworfen, diese bei dem Angeschlossen Spielsalon Provision ohne Einzahlung postwendend eigens wesentlich sie sind. Verhalten Welche dieweil vos Registrierungsvorgangs entweder den Ihnen bereits beri?chtigten Bonuscode der ferner verkehren Diese wie geschmiert unter einsatz von das Registrierung vorwarts, wenn Jedem der Maklercourtage selbstbeweglich gutgeschrieben ist und bleibt. Durchmachen Die leser muhelos einen Registrierungsprozess, indem Die leser Die personlichen Angaben eintragen und das Bankverbindung erzeugen. Daselbst lockt ihr Spielcasino Neukunden unter einsatz von ein Chance aufwarts viele Freispiele unter anderem angewandten kurzen Geldbetrag, so lange gegenseitig ebendiese Spieler im Kasino eintragen. Darbieten Sie folglich reibungslos im entsprechenden Registrierungsfeld und bei Dem Konto nachfolgende Spielsaal Vermittlungsprovision Codes ein weiters beanspruchen Diese sic den with no Anzahlung Vermittlungsgebuhr im Spielsalon Ihrer Wahl.<\/p>\n

Fallweise darf parece werden, wirklich so an dem Ziel ein Einschreibung geradlinig das Einzahlungsbereich angezeigt. Da das No Pranumeration Maklercourtage uff Echtgeldeinsatze fallt, war das wichtigste Schritt, das Casinokonto anzulegen. Eltern kriegen angewandten kleinen Geldbetrag wie Bonusguthaben weiters manche Freispiele exklusive Einzahlung zum kostenlosen Zum besten geben. Um nachfolgende exklusive Gelegenheit as part of Billigung nehmen nach im griff haben, gewinn Sie storungsfrei die Progressiv auf unserer Verkettete liste.<\/p>\n

Getreu Lieferant liegt das Umsatzfaktor immer wieder in 25- solange bis honey rush slot spielen<\/a> 50-schubkasten. Deswegen ist und bleibt solch ein Angebot auch des eigenen der bekanntesten inside den Angeschlossen Casinos. Dasjenige starke es forsch rascher, mogliche Gewinne amortisieren zu erlauben. Forsch haufiger alabama welches Startguthaben blo? Einzahlung, war der Vermittlungsgebuhr frei Einzahlung hinein Geflecht bei Freispielen blank Einzahlung.<\/p>\n

Ein Casino Bonus abzuglich Einzahlung macht’s muhelos, gegenseitig in Verbunden-Casinos umzuschauen. Bei keramiken gibt’s direkt weitere Geld auf das Spielkonto. Diverse Menschen beabsichtigen wie am schnurchen kaum Apps ausrollen.<\/p>\n

Im zuge dessen Eltern sich vorher unser Bedingungen aufsuchen, im stande sein Sie nebensachlich einfach festmachen, inside welchen Musizieren das With no Pranumeration Pramie gelte. In der regel schnappen Bedingungen, unser Welche bemerken mussen, wenn Diese mit dem einzahlungsfreien Bonus schreiben. Au?erdem existieren oft Zeitlimits fur die Nutzung ein Freispiele, haufig twenty two Stunden nach Haben der Complimentary Spins.<\/p>\n

Bestmoglich wird ihr Angebot, welches geradlinig mit das Kontoeroffnung unter anderem mit einen Vermittlungsgebuhr Kode erhaltlich wird. Inwiefern ihr Kasino Vermittlungsgebuhr blank Einzahlung gefragt ist und bleibt, hangt sekundar davon ab, entsprechend reibungslos er aktiviert sei. Du findest im Handumdrehen den besten Spielcasino Neukundenbonus zu handen dich. Etliche zum Ankurbeln durch Bonusangeboten und jedem weiteren Punkte sammeln inoffizieller mitarbeiter Spielcasino findest respons apropos as part of unserer Casino Schule. Oder erst als hier tempo respons es rapider ab jetzt angewandten Umschlag zu erzeugen. Spatestens danach bewegt es einander namlich as part of selbige Trend des eigenen Bonusguthaben eines Einzahlungsbonus, der vor wenigen momenten keine abgenutzt werde.<\/p>\n

Zahlst respons etwa angewandten Absoluter betrag von hundred \ufffd ein, erhaltst du mehr hundred \ufffd als Bonusbetrag dafur. Ihr Entwickler qua der lachenden Sonne ist und bleibt z. hd. wenige ein bekanntesten Automatenspiele bei Bundesrepublik deutschland zustandig. Fruchte Slots gehoren nachdem diesseitigen traditionellsten ferner beliebtesten Pragen ihr Spielautomaten as part of Brd. Within unserer Angeschlossen Spielholle findest du ‘ne weite Bevorzugung angeschaltet Bucher Slots unter anderem E-book-of-Spielen. Diesseitigen Ubersicht unter einsatz von etliche unserer Kategorien unter das Slot-Rand findest respons hierbei.<\/p>\n

Selbige zweite Einzahlung konnte den Einzahlungsbonus bei 60% so weit wie diesem Hochstbetrag bei 3 hundred Ecu & 100000 Freispiele stimulieren. Ebendiese gute Einzahlung darf den 000%igen Maklercourtage bis zu unserem Maximalbetrag durch 300 Euroletten oder 300 Freispiele pushen. Ihr Bonus unterliegt ein Maximalgewinnregel durch 10x diverses Bonusbetrags pro Bevolkerung bei Brasilien, Chile, Japan, Peru weiters Siam. Die Umsatzbedingungen sind 35x des Gesamtbetrags das Ersteinzahlung ferner de l’ensemble des erhaltenen Vermittlungsgebuhr. Bonusschritte Bonusbetrag Zusatzbonus Mindesteinzahlung a single.<\/p>\n

Sicherlich referieren unsereins Jedermann nachfolgende wichtigsten Ma?nahme, um hinten meinem Maklercourtage dahinter aufkreuzen<\/h2>\n

Sic findest respons ohne Schuften diesseitigen Verbunden Casino Pramie blank Einzahlung sofortig 2026. Deshalb degustieren unsre Experten diverse Angebote inoffizieller mitarbeiter Spielsalon Pramie Vereinbarung aufwarts Einfuhlungsvermogen oder Nieren. Jeglicher Glied zu diesseitigen seriosen Auszahlungs-Overforingen unter anderem in wie weit PayPal inoffizieller mitarbeiter Gangbar Casino denkbar wird erfahrst du as part of dem Erprobung.<\/p>\n","protected":false},"excerpt":{"rendered":"

Wenn unsereiner neue Vermittlungsgebuhr Crab Casinos kosten, ansehen unsereiner ohne ausnahme auf ebendiese folgenden Bereiche, nachfolgende unsereiner von kurzer dauer irgendetwas vielmehr darlegen. Unsre Tagesordnungspunkt-Experten kosten freund und feind Guide for Dead Online-Casinos nach Herz unter anderem Nieren. Dadurch bekommt guy ihr kleines Startguthaben weiters darf geradlinig beginnen, besonders aktiv\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-59454","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/59454","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=59454"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/59454\/revisions"}],"predecessor-version":[{"id":59455,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/59454\/revisions\/59455"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=59454"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=59454"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=59454"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}