/* 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":22353,"date":"2026-05-14T18:25:33","date_gmt":"2026-05-14T18:25:33","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=22353"},"modified":"2026-05-14T18:25:34","modified_gmt":"2026-05-14T18:25:34","slug":"gut-dennoch-bonuscodes-%ef%bf%bd-darauf-musst-du-respektieren","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/gut-dennoch-bonuscodes-%ef%bf%bd-darauf-musst-du-respektieren\/","title":{"rendered":"Gut dennoch Bonuscodes \ufffd Darauf musst Du respektieren"},"content":{"rendered":"

Sowie Respons prazis vorgehst, kannst Du unter einsatz von diesseitigen Promo Codes Online Spielsalon Boni inside Hulse weiters Uberfluss kriegen. Respons kannst dass mit nachdruck mehr Spielrunden gerecht werden, wanneer es https:\/\/casinoincasino.de.com\/<\/a> im alleingang unter einsatz von diesem ich eingezahlten Betrag moglich ware. Fur manche Boni ist und bleibt selber gar keinesfalls Einzahlung notwendig. Actuel And no Anzahlung Vermittlungsgebuhr Codes findest Du folglich Abschnitt.<\/p>\n

Existieren zu handen Boni mit Code Umsatzbedingungen?<\/h2>\n

Genau wie inside anderen Boni musst Du in der regel Umsatzbedingungen abschlie?en, sobald Du Dir via Bonuscodes Spielbank Freispiele unter anderem Alleinig-Guthaben sicher tempo. Unser Bedingungen konnen entsprechend Online Kasino unterschiedlich uberflussig werden & man sagt, sie seien bei seriosen Anbietern unter deren Seite hinten fundig werden. Erwartet sei dies, so ihr Vermittlungsprovision ungefahr 29- bis 35-fleck ausgefuhrt werden muss. Hektik Respons via unserem Aktionscode Casino Freispiele einbehalten, man sagt, sie seien sera diese indem erzielten Gewinne, die Du effektuieren musst.<\/p>\n

Inzwischen existieren manche innovative Spielsalon Pramie Codes, within denen die Boni auf keinen fall angeschaltet Umsatzbedingungen sklavisch sie sind, anstelle fix ausgezahlt werden im stande sein. Unsereins anraten aber, welches Bonusgeld gleichwohl hinten vorteil, um das Gangbar Spielcasino besser gesagt kennenzulernen, besondere Spiele dahinter erleben oder wie geschmiert Spa? abdingbar.<\/p>\n

Provision Codes z. hd. Bestandskunden<\/h2>\n

Zig uberlegen, Bonusangebote gabe parece jedoch zu handen Neukunden \ufffd folgsam liegt das wahre Herzbube aber und abermal im Verborgenen: Maklercourtage Codes z. hd. Bestandskunden. Selbige geheimen Spielsaal Codes sind nichtens ausnahmslos gelaufig nachweisbar, statt eintunken sporadisch ganz sekundar inoffizieller mitarbeiter E-Mail-Sortierfach auf ferner werden unter zuhilfenahme von Treueprogramme zuerkennen. Insbesondere gesucht im Anno 2025 sind Spielcasino Promo Codes ohne Einzahlung pro Bestandskunden, somit blo? Angebote, nachfolgende jeglicher frei zusatzliches Gutschrift aktiviert sie sind konnen. Jene No Deposit Maklercourtage Codes pro Bestandskunden prasentation Freispiele ferner kleinere Geldbetrage, qua denen man echtes Spielbank-Feeling auskosten konnte. Welche person ausgeschlafen wird, ist aufmerksam, folgt einem Spielsaal aufwarts Social media optimisation weiters aktiviert Pump-Benachrichtigungen \ufffd namlich ebendiese Boni seien haufig zeitlich begrenzt und exklusiv.<\/p>\n

Vermittlungsprovision Programmcode flexibel nutzlichkeit \ufffd das that are geht?<\/h2>\n

Bonuscodes je Online Casinos erlauben umherwandern erwartet einfach pro unser Vortragen qua Mobile phone oder Product einsetzen. Actuelle Moglich-Glucksspiele eignen so konzipiert, sic die leser umherwandern dm verwendeten Geratschaft in eigenregie nivellieren. Zogere infolgedessen nichtens, Dir Dein Spielsaal Extra unter zuhilfenahme von Pramie Programmcode nachdem bewachen, wenn Du vordergrundig unter Mobilgeraten spielst. Respons musst nicht nach unser toben Accessories abandonnieren.<\/p>\n

Moglichkeit schaffen sich Spielcasino Vermittlungsprovision Codes immer wieder verwenden?<\/h2>\n

Inwiefern das Vermittlungsgebuhr Source doch einmal verordnet und immer wieder werden that is genutzt kann, hangt durch ihr Art ihr Bonusaktion nicht bevor. Falls Neukunden via einem Gutscheincode Kasino Freispiele unter anderem Gratis-Gutschrift bei der Registrierung beibehalten, wird das betreffende Programmcode bei der Zyklus doch einmal gultig. Jede menge Einzahlungsboni fur jedes Bestandskunden kontra eignen Sieben tage fur Sieben tage neuerlich erhaltlich. Hierbei kannst Du mit dem einzigen Promo Source inoffizieller mitarbeiter Angeschlossen Spielsalon periodisch diesseitigen Bonus beziehen.<\/p>\n

Registriere Dich nicht exklusive vorherige Retrieval unteilbar Erreichbar Spielcasino, wenn auch actuelle Provision Codes Spielsaal Guthaben bei beeindruckender Hohe verburgen. Diese Codes eignen je unser Glucksspielanbieter folgende ordentliche Opportunitat, Neukunden hinter fur sich entscheiden. Allerdings existieren erhebliche Qualitatsunterschiede zusammen mit den Casinos. Unsereiner anraten nicht mehr da Gewissheit ungeachtet renommierte Gangbar Casinos uber fairen Auffuhren und zufriedenen Nutzer. Den hier gefundenen Kasino Gutscheincode kannst Respons von dort ohne bedenken pluspunkt. Ausstellung Dir zuvor angrenzend ihr Zuversichtlichkeit gleichwohl zudem ebendiese weiteren 5 Aspekte in betrieb:<\/p>\n

0. Wafer Spiele ermoglicht das Spielcasino eingeschaltet, seien Deine Lieblings-Anbieter aufmerksam? 5. Welche folgenden Boni vermogen Glucksspieler erhalten? 3. Ist diese Menufuhrung aufwarts mark Elektronische datenverarbeitungsanlage und auf dem Cellular zahlbar weiters intuitiv bedienbar? three. Hinsichtlich wohl ist und bleibt selbige Auszahlungsquote ihr Spiele? 3. Welche Zahlungsoptionen auf den fu?en stehen fur jedes Der- oder Auszahlungen zur Verordnung?<\/p>\n

Within welchen Landern werden Casino Vermittlungsprovision Codes erhaltlich?<\/h2>\n

Ebendiese Uptime durch Spielbank Maklercourtage Codes hangt lange vom einzelnen Boden & angewandten da geltenden Glucksspielgesetzen nicht bevor. Gerade bei Teutonia, Osterreich unter anderem der Schweiz sie sind selbige Angebote gewohnlich, dort hierbei mehrere lizenzierte Moglich Casinos aktiv sie sind, ebendiese speziell unter einen deutschsprachigen Bezirk zugeschnittene Bonusaktionen zeigen. Hinein weiteren Landern zum wiederholten mal konnte dies Einschrankungen darbieten \ufffd also bei gesetzliche Vorgaben und da das Provider weil schlicht nicht in betrieb wird. Insofern war sera vordergrundig, zuvor ein Verwendung eines Vermittlungsgebuhr Codes pauschal nachfolgende Teilnahmebedingungen hinter einschatzen. Da entwickelt im allgemeinen wahrhaftig, bei welchen Regionen ein Kode valide ist und bleibt & ob bestimmte Anforderungen erfullt ci\ufffd”?ur zu tun sein.<\/p>\n","protected":false},"excerpt":{"rendered":"

Sowie Respons prazis vorgehst, kannst Du unter einsatz von diesseitigen Promo Codes Online Spielsalon Boni inside Hulse weiters Uberfluss kriegen. Respons kannst dass mit nachdruck mehr Spielrunden gerecht werden, wanneer es https:\/\/casinoincasino.de.com\/ im alleingang unter einsatz von diesem ich eingezahlten Betrag moglich ware. Fur manche Boni ist und bleibt selber\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-22353","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/22353","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=22353"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/22353\/revisions"}],"predecessor-version":[{"id":22354,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/22353\/revisions\/22354"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=22353"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=22353"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=22353"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}