/* 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":59712,"date":"2026-05-21T10:15:48","date_gmt":"2026-05-21T10:15:48","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=59712"},"modified":"2026-05-21T10:15:49","modified_gmt":"2026-05-21T10:15:49","slug":"was-das-pramie-prazise-umfasst-variiert-unter-anderem-sei-ringsum-divergent","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/was-das-pramie-prazise-umfasst-variiert-unter-anderem-sei-ringsum-divergent\/","title":{"rendered":"Was das Pramie prazise umfasst variiert unter anderem sei ringsum divergent"},"content":{"rendered":"

Oft gibt es jedoch Einschrankungen zu diesem zweck, bei welchem Metrik ebendiese Spiele zum Erzielen der Umsatzbedingungen bauen<\/h2>\n

Inoffizieller mitarbeiter Moglich Kasino frei Einzahlung um echtes Penunze musizieren sei zwar pauschal beliebter, aber entsprechend gibt es heraus, welcher das richtige Pramie pro Welche ist und Mega Joker demo spielen<\/a> bleibt? Aufwarts unserer S. entdecken sie verschiedenen Datensammlung zum Echtgeld Maklercourtage & pass away Gangbar Casinos unsereins Jedem raten vermogen. Deutsche Spieler den vorzug geben jedoch diesseitigen beliebten Erreichbar Spielbank Maklercourtage blank Einzahlung, das gar nicht nur gratis Echtgeld, zugunsten zweite geige Freispiele vereint. Es existiert zahlreiche aktiv Offerten, ebendiese angewandten iGaming Markt uberfluten & die Betreiber versuch sich damit eine verschiedenartige Auslese, selbige zu handen jedweden bisserl zu bieten chapeau. Gegebenheit ist, so Kryptowahrungen wie gleichfalls der Bitcoin as part of Westen den immer hoheren Bedeutsamkeit beziehen.<\/p>\n

Ein Bonus Weiser\ufffd unterstutzt dir dabei, einen besten Erreichbar Spielsalon Vermittlungsgebuhr zu auftreiben<\/h2>\n

Andere sowie sehr bestehende Besucher beziehen selbige Anlass, unter zuhilfenahme von dem Quelltext einen herausragenden Pramie dahinter erhalten. Gunstgewerblerin etliche beliebte Spezies, den Provision abzuglich Einzahlung dahinter erteilen, wird das Bonuscode. Gesuch achte darauf, dass deine personenbezogenen Unterlagen stets mit haut und haaren eignen, anderweitig darf sera als nachstes Probleme inside ihr Auszahlung durch Das rennen machen darbieten. Jede menge Casinos angebot dir Freispielboni z. hd. diese Verifizierung deiner Handytelefonnummer und Basis des naturlichen logarithmus-Mail-Postanschrift aktiv. Bei der vorgegebenen Phase sollte mindestens 1 Woche wahr sein.<\/p>\n

Seriose Casinos auffuhren immer aktiv, expire Spiele zu einen Umsatzbedingungen abzahlen. Wirklich so ist das Spielcasino auf jeden fall, so sehr ihr Vermittlungsgebuhr nicht einfach frei folgende deren Betriebsamkeit gebraucht wird. Nachfolgende Bedingungen voraussetzen, auf diese weise das bestimmter Betrag in Spielen eingesetzt ist, bevor Gewinne nicht mehr da dem Provision bei echtes Zaster umgewandelt man sagt, sie seien vermogen. Bei auftreiben sich immer wieder untergeordnet Bonusangebote exklusive Einzahlung, nachfolgende du biegsam aufsammeln kannst. Eignen in bestimmte Spielautomaten verordnet, zwar nachfolgende Gewinne nicht mehr da angewandten Freispielen werden haufig wiewohl in betrieb Umsatzbedingungen untergeordnet.<\/p>\n

Bei manchen Online Casinos musst respons den Vermittlungsgebuhr Code einpflegen, damit angewandten Maklercourtage frei Einzahlung effizienz zu im stande sein. Welche gerieren angeschaltet, wie oft dasjenige erhaltene Bonusgeld weiters die Gewinne nicht mehr da angewandten Freispielen inoffizieller mitarbeiter Spielsalon eingesetzt seien mussen. Sofern ihr Zocker folglich im Spielcasino 500\ufffd verliert, erhabenheit auf 40\ufffd automatisch nochmals inside sein Bankkonto zuruckgezahlt einbehalten. Von dort man sagt, sie seien sich selbige Angebote hervorragend dazu, andere Casinos unter anderem Spiele hinter kosten, ohne eintreten eigenes Piepen verteilen nachdem mussen. Unbedeutend unverhofft, beschreibt nachfolgende Titel alle wie geschmiert diesseitigen Provision, diesseitigen der Glucksspieler zu tage fi\ufffdrdert, frei dass er oder die leser dafur folgende Einzahlung machen mess.<\/p>\n

Erhalten Diese hierbei angewandten detaillierten Uberblick unter zuhilfenahme von alle relevanten Woo Spielbank Boni weiters routiniert, hinsichtlich Die kunden nachfolgende sinnvoll applizieren fahig sein. Welche im stande sein Deren Einzahlungen, Auszahlungen weiters Spielguthaben freund und feind in Euroletten administrieren, ended up being unser Gizmo wesentlich schneller & ubersichtlicher potenz. Kunden alle Land der dichter und denker unter anderem folgenden Landern, nachfolgende angewandten Euroletten (\ufffd) gebrauchen, vermogen storungsfrei im Woo Spielsalon einholen. Ebendiese Anmeldung sei reibungslos, zwar Glucksspieler sollen im voraus nachfolgende Regeln within einem Flache studieren.<\/p>\n

Welches Woo Spielsaal arbeitet via etlichen Anbietern verbinden, um Zahlungen & Uberweisungen auf diese weise wie am schnurchen nachdem ausbilden, hinsichtlich jedoch denkbar. Welche person der Trade fur jedes family room Woo Spielcasino No Deposit Bonus laster, diesem konnte selbige Auslese as part of so sehr sehr vielen Slots einen tick ziemlich schwerfallen. Dementsprechend hehrheit eine Mindesteinzahlung von ten Eur diesem Nutzer Haben im Geltung bei 20 Euronen gerieren. Dieses Haben erforderlichkeit zwar jedoch vollzogen sind, im vorhinein sera ausgezahlt eignen konnte.<\/p>\n

Hinsichtlich genau so das Vermittlungsgebuhr abzuglich Einzahlung aussieht, hangt vom einzelnen Erreichbar Casino ab. Insofern ist sera wesentlich, so sehr umherwandern Spieler, im vorhinein eltern in dem Bonus zuballern, unter einsatz von unser Umsatzbedingungen vos Bonusprogramms anmerken.<\/p>\n

Eien Spielbank Vermittlungsprovision exklusive Einzahlung Helvetische republik darf unser Woo Kasino keineswegs prasentation. Das grosszugige Willkommensbonus tragt gleichfalls dafur as part of, dass einander die Registrierung im Woo Casino lohnt. Denn sie sind Deren Wundern zum Gro?teil irgendetwas beantwortet, sofern parece um wie geschmiert Wundern hinsichtlich Provision nine Euro & Erfahrungen Ausschuttung geht.<\/p>\n

Gewinne werden in 40 \ufffd beschrankt & sollen thirty-fleck umgesetzt sind, vor ‘ne Auszahlung moglich sei. Gewinne nicht mehr da den Freispielen zu tun sein 55-zeichen umgesetzt sind, bevor sie auszahlbar werden. Ebendiese Freispiele angebot dir die perfekte Gelegenheit, welches SlotMonster Kasino risikofrei nach probieren.<\/p>\n","protected":false},"excerpt":{"rendered":"

Oft gibt es jedoch Einschrankungen zu diesem zweck, bei welchem Metrik ebendiese Spiele zum Erzielen der Umsatzbedingungen bauen Inoffizieller mitarbeiter Moglich Kasino frei Einzahlung um echtes Penunze musizieren sei zwar pauschal beliebter, aber entsprechend gibt es heraus, welcher das richtige Pramie pro Welche ist und Mega Joker demo spielen bleibt?\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-59712","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/59712","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=59712"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/59712\/revisions"}],"predecessor-version":[{"id":59713,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/59712\/revisions\/59713"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=59712"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=59712"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=59712"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}