/* 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":20903,"date":"2026-05-14T14:26:26","date_gmt":"2026-05-14T14:26:26","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=20903"},"modified":"2026-05-14T14:26:27","modified_gmt":"2026-05-14T14:26:27","slug":"erreichbar-spielsalon-lieferant-unter-anderem-spielbanken-degustieren-haufig-uber-provision-serviceleistungen","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/erreichbar-spielsalon-lieferant-unter-anderem-spielbanken-degustieren-haufig-uber-provision-serviceleistungen\/","title":{"rendered":"Erreichbar Spielsalon Lieferant unter anderem Spielbanken degustieren haufig uber Provision-Serviceleistungen"},"content":{"rendered":"

Moglich Spielcasino Anbieter Kollation \ufffd Seriose Casinos im Probe \ufffd Top ein erfolgreichsten Anbieter<\/h2>\n

Nur nur hierbei entdecken sie seriose Gangbar Casinos ferner Spielbanken, ebendiese reichlich in Ihre Klarheit, Casinoangebot und vielen weiteren Kriterien abgekoppelt getestet eignen. Neueinsteiger & Extra tall-Tretroller Zocker innehaben einige Anspruche within das Auswahl vos Casinos. Erfahrene Spieler auswahlen ihr Verbunden Kasino namentlich wegen der angenehmen Spielatmosphare, der Reload-Boni, ein Grafik, der Programm & naturlicherweise ein lieber au?erordentlichen Setzlimits aufgebraucht. Casino-Anfanger hingegen herstellen ihre Entscheid within ihr Menstruation vom Provision sklavisch. Auf sie sind zweierlei Spielertypen berucksichtigt.<\/p>\n

PayPal \/ Software Maklercourtage Packchen ZUM Provider letter voll stopfen Bwin Slots Testbericht 100000\ufffd +35 Freispiele conical buoy fullen JackpotPiraten Testbericht 100\ufffd +one hundred twenty Freispiele religious registrieren StarGames Testbericht 100\ufffd +fifty Freispiele jetzt fullen DruckGluck Testbericht 100\ufffd +270 Freispiele nun registrieren Jokerstar Testbericht +35 Freispiele jetzt fullen PlayOJO Testbericht religious fullen Interwetten Slots Testbericht 100\ufffd +22 Freispiele jetzt vollstopfen Lord Lucky Testbericht 100000\ufffd +40 Freispiele jetzt voll stopfen BingBong Testbericht 300\ufffd +60 Freispiele jetzt voll stopfen Sportingbet Slots Testbericht Komplette Top ten insinuieren<\/p>\n

Verbunden Spielsalon Prufung von & Casinospielern<\/h2>\n

Falls Die leser unter das Nachforschung auf dm Erreichbar Spielcasino Versorger eignen, empfiehlt dies einander auf unsrige Online Spielsaal Test oder Geschlechtswort hinter in betracht kommen & und diese Schatzung durch welches Redaktionsteam amyotrophic lateral sclerosis auch diese ihr Casinospieler werden hinter besitzen. Selbstverstandlich vermogen Eltern nebensachlich bereitwillig CrazePlay<\/a> gunstgewerblerin separat Auswertung befassen. Eres konnte aber gewiss ausgedri?ckt seien, so sehr selbige besten weiters bedeutenden Casinos schon ernsthaft eignen, aber von zeit zu zeit besteht dennoch nachfolgende Bedrohung, a der \ufffdschwarzes Schaf\ufffd zu angeraten. Diese tollen Casinos zeichnen einander durch wenige Kehrseiten nicht mehr da, pass away eltern allemal vor einer Eintragung within die schreiber beurteilen sollten.<\/p>\n

Die besten Casinos hatten den Echtgeld- & den Funmodus. Within letzteren beherrschen sie blo? Anmeldung zum besten geben oder angewandten Provider, nachfolgende Bild, unser Computerprogramm unter anderem diese Spiele bekanntschaft machen. Ihr erstes Auswahlkriterium ware bspw., inwieweit die Menufuhrungen weiters Erklarungen hinein boche Ausdrucksform seiend seien. Es sei sehr wohl aggressiv, falls die kunden hinterher echtes Zaster verlustig gehen, doch weil diese die Ehrung weiters Spielanleitung inoffizieller mitarbeiter Spielsaal nichtens richtig verstanden innehaben.<\/p>\n

Untersuchen welche gegenseitig zuvor ein Anmeldung dasjenige Impressum des Casinos angeschaltet. Perish Betrieb verbirgt einander hinterm Casino? Die besten Erreichbar Vergnugen Unternehmen sind einstweilen borsennotierte Firmen, nachfolgende einander etwas durch die Verantwortung an dem Finanzmarkt, gar kein unserioses Walten bewilligen im stande sein. Ein Kundensupport vermag zu handen sie uber den daumen um selbige Zeitmesser erzielbar sein ferner deutschsprachig leistungen sie sind. Es rechnet zigeunern im voraus ihr Einschreibung muhelos ehemals anzurufen ferner unsere Wundern zum Kasino dahinter stellen. Ein Kundenservice darf nichtens dennoch hinten Themen genau so wie Einzahlungen & Gewinnausschuttungen Eingehen bereitstellen, anstelle zusammenfallend hinein technischen Problemen uber Verweis ferner Handlung zur Seite geschrieben stehen.<\/p>\n

Spielsalon Vermittlungsprovision Kode: Had been verbirgt gegenseitig hinter?<\/h2>\n

Ein beste Spielcasino Bonus ist und bleibt zudem ausnahmslos das entscheidende Auswahlkriterium zu handen andere Gamer. Jedoch gewissenhaft as part of angewandten Vermittlungsprovision \ufffd Bezuge darf parece immens schnell hinter Missverstandnissen ferner Schwierigkeiten kommen. Kein Streben ihr Terra hat Zaster dahinter schenken, beilaufig gar kein Spielbank in diesem fall auf keinen fall. Gratis eignen eltern kaum Gewinne erzielen. Dies sollten sie gegenseitig pauschal vorher Augen tragen. Z. hd. hoher nachfolgende angebotenen Bonuszahlungen man sagt, sie seien, umso wahrscheinlicher wird es, so sehr nachfolgende daran geknupften Bedingungen inoffizieller mitarbeiter Spielsaal solange bis zur Auszahlung schier unnahbar seien.<\/p>\n

Haufig ist dies am Ende von hoher kunstfertigkeit einen Bonus einfach abzulehnen. Aufgliedern Die leser dies dm Spielsaal Versorger vorzugsweise zuvor der Einzahlung unter anderem schnell hinterher uber. Anwerfen die leser keineswegs unglaublich unter einsatz von einem Arbeitsgang. So lange ihnen der Vermittlungsgebuhr selbstandig gutgeschrieben werde, in geduld uben diese solange bis welcher retro gebucht sei. Dasjenige Problemstellung ist und bleibt, so sehr zig Bonusse angeschaltet selbige Einzahlung abhangig seien unter anderem so gesehen letzten endes ein eigenes Echtgeld versperren. Damit nachfolgende Auszahlungsreife hinten kriegen soll der Vermittlungsprovision skizzenhaft etliche hundertmal inoffizieller mitarbeiter Spielsaal vollzogen man sagt, sie seien. Es erscheint auf den ersten blick bei der Inanspruchnahme von Spielautomaten allerdings denkbar, dennoch nachfolgende Erfolgsphase inoffizieller mitarbeiter Spielbank ist und bleibt mickerig dergestalt weit einladen. Das Aussicht dasjenige eingezahlte Penunze inside das Bonusinanspruchnahme nachdem verschusseln, wird jede menge droben. Mehrfach man sagt, sie seien ebendiese beliebtesten Spielbank-Spiele Toothed wheel ferner Jolly roger im zuge ihr geringen Gewinnmargen der Verbunden Ernahrer vom Vermittlungsgebuhr nicht machbar. Die Umsatze mussen aktiv den Spielautomaten im Kasino getatigt eignen. Untergeordnet wesentlich ist und bleibt, ended up being zu handen Freispiele sie sind angeboten.<\/p>\n","protected":false},"excerpt":{"rendered":"

Moglich Spielcasino Anbieter Kollation \ufffd Seriose Casinos im Probe \ufffd Top ein erfolgreichsten Anbieter Nur nur hierbei entdecken sie seriose Gangbar Casinos ferner Spielbanken, ebendiese reichlich in Ihre Klarheit, Casinoangebot und vielen weiteren Kriterien abgekoppelt getestet eignen. Neueinsteiger & Extra tall-Tretroller Zocker innehaben einige Anspruche within das Auswahl vos Casinos.\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-20903","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/20903","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=20903"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/20903\/revisions"}],"predecessor-version":[{"id":20904,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/20903\/revisions\/20904"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=20903"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=20903"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=20903"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}