/* 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":67514,"date":"2026-05-22T13:31:37","date_gmt":"2026-05-22T13:31:37","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=67514"},"modified":"2026-05-22T13:31:39","modified_gmt":"2026-05-22T13:31:39","slug":"spielbank-maklercourtage-exklusive-einzahlung-03-2026-insider-tipps-je-maximale-gewinne-exklusive-eigenes-moglichkeit","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/spielbank-maklercourtage-exklusive-einzahlung-03-2026-insider-tipps-je-maximale-gewinne-exklusive-eigenes-moglichkeit\/","title":{"rendered":"Spielbank Maklercourtage exklusive Einzahlung 03 2026: Insider-Tipps je maximale Gewinne exklusive eigenes M\u00f6glichkeit"},"content":{"rendered":"

Wenn respons 50 Freispiele inside ein Anmeldung erh\u00e4ltst, solltest respons \u00fcber kenntnisse verf\u00fcgen, welches respons qua diesseitigen Freispielen handhaben kannst. So lange 50 Freispiele abz\u00fcglich Einzahlung postwendend verf\u00fcgbar sind, bedeutet es, sic respons gunstgewerblerin Kontoer\u00f6ffnung effektuieren ferner dich eingeschaltet die Bonusbedingungen halten musst. Gl\u00fccksspielanbieter, diese Freispiele blank Einzahlung zur Regel auffangen, sehen meist wenigstens zudem den Einzahlungsbonus au\u00dferplanm\u00e4\u00dfig inoffizieller mitarbeiter Softwaresystem. So sehr kannst respons dasjenige Offerte des Anbieters abschmecken, blo\u00df Bimbes riskieren nachdem m\u00fcssen.<\/p>\n

So lange du winzig Chance eingehen weiters maximalen Spielspa\u00df effizienz m\u00f6chtest, solltest respons via einem Mindesteinsatz zum besten geben, dadurch loyal umherwandern bereits mehrere Spielrunden. Allerdings, bei dem Abschlie\u00dfen das Umsatzbedingungen tempo respons viel mehr Entwicklungsm\u00f6glichkeiten unter anderem die solltest respons entsprechend pluspunkt. Hinein diesseitigen Freispielen meine wenigkeit bist respons an einen bestimmten Slot h\u00f6rig unter anderem kannst unwirklich variieren, was wiewohl unter angewandten Nutzung auftritt. VIP-Konstitution Oft kannst respons unter einsatz von deinen Eins\u00e4tzen einen Vip-Stand erwirken, bei dem respons danach genauso Free Spins erh\u00e4ltst. Bonusart ️ Beschreibung Treueprogramm Inoffizieller mitarbeiter Treueprogramm erh\u00e4ltst respons oft Freispiele, je ebendiese hinterher keine Einzahlung n\u00f6tig ist und bleibt. Solltest respons noch mehr Gewinn erwirken, hinterher war selbige Verschiedenheit st\u00f6rungsfrei gel\u00f6scht.<\/p>\n

Unsereiner schnappen dir hierbei Spiele vorweg, CoinCasino<\/a> unser inzwischen h\u00e4ufig je Spielsaal-Freispiele genutzt eignen, inbegriffen kurzer Hinweise dahinter RTP unter anderem Abweichung. Casinos gebot zu h\u00e4nden Freispiele immer wieder bekanntschaften Slots an, da ebendiese Managen leicht verst\u00e4ndlich sind oder du selbige Mechaniken direkt erkennst. Vor respons ihr Angebot beanspruchst, solltest respons unser dazugeh\u00f6rigen Bonusbedingungen (Terms & Conditions) exakt beurteilen. ‘ne detaillierte Register steht as part of den AGB, oder sie darf gem\u00e4\u00df Spielsaal abweichen, sogar wenn der Slotanbieter derselbe sei. Setze dir deshalb die Erinnerungsverm\u00f6gen ferner plane reicht Intervall, um dasjenige Wager frei Hektik hinter fertig werden.<\/p>\n

Folgende etliche Gegenstand, die Eltern in Casino Freispielen ohne Einzahlung beachten m\u00fcssen, ist gern diese Lebensdauer der gutgeschriebenen Bonusrunden. Sowie Sie folglich Freispiele ohne Einzahlung 2026 bed\u00fcrfen, sollen Die leser nach Tischspiele und Live Spielbank Spiele abandonnieren, so lange Diese unser vorgegebenen Umsatzbedingungen gerecht werden intendieren. Ihr einzige Unterschied liegt inside ein Tatsache, dass Diese within diesseitigen Freispielen nicht diesseitigen gutgeschriebenen Absoluter betrag, anstelle die entstandenen Gewinne aus diesseitigen Freispielen verwirklichen m\u00fcssen. Bei jedem gutgeschriebenen Bonusbetrag sie sind Diese eigenen schlie\u00dflich zum ersten mal realisieren m\u00fcssen, vorab Eltern an das echte Bares aufkreuzen f\u00e4hig sein.<\/p>\n

Praktisch stellt sich die Frage, wie gleichfalls Casinofans besonders st\u00f6rungsfrei unter anderem schnell a die Freispiele blank Einzahlung kommen? Und gerade beim Bonusgeld handelt es zigeunern daher im regelfall um Aktionen, welche Einzahlungen bed\u00fcrfen. Vor wenigen momenten Laie wandern turnusm\u00e4\u00dfig Bedrohung, von einen Bonusprogrammen eine falsche Event hinter aufkommen.<\/p>\n

D. h., dass unsereins eine Schicht kriegen k\u00f6nnten, sofern Respons das Offerte unserer Auflistung as part of Lizenz nimmst. Nachfolgende besten Online Kasino Freispiele gelten bekanntlich 72 Stunden nicht vor ein Guthaben, dieweil Diese ebendiese schlechtesten Angebote nur im innern durch 12 Stunden auskosten im stande sein. Anerkennen Sie deswegen im vorfeld ihr Anfang nicht ungeachtet unter die Anzahl ein gutgeschriebenen Freispiele, anstelle beil\u00e4ufig auf das Arbeitsgang, z. hd. welches Die leser diese Bonusrunden einsetzen im griff haben. Ihr Hauptanteil das gutgeschriebenen Freispiele abz\u00fcglich Einzahlung Spielbank Boni gilt 72 Stunden nicht bevor unserem Zeitpunkt das Haben.<\/p>\n

Die Wahrscheinlichkeit, ebendiese Umsatzanforderung hinter absolvieren, liegt aufw\u00e4rts einen Testdaten bei z.b. 15 % zu h\u00e4nden nachfolgende untersuchten Spiele, unterdessen die Risiko, angewandten Erfolg bei so weit wie 50 \u20ac aussch\u00fctten dahinter lizenzieren, bei ringsherum 5 % liegt. Freund und feind Berechnungen deutlich machen, auf diese weise unser erwartete Ausbeute trotz kurzfristiger Gewinnm\u00f6glichkeiten ungut bleibt. Obgleich das verlockenden Umsonst-Angebote bleibt unser erwartete Verlustquote bei z.b. 4 % des Bonusbetrags, unter anderem die Wahrscheinlichkeit, unser Umsatzbedingungen nach absolvieren, liegt ungeachtet as part of vielleicht 15 %. Respons solltest st\u00e4ndig diesseitigen Verfassung deiner Fragestellung erfassen beherrschen. Undeutlich Begr\u00fcndungen f\u00fcr jedes Auszahlungsverz\u00f6gerungen entsprechend “technische Probleme” blank Moment solltest respons fragen.<\/p>\n","protected":false},"excerpt":{"rendered":"

Wenn respons 50 Freispiele inside ein Anmeldung erh\u00e4ltst, solltest respons \u00fcber kenntnisse verf\u00fcgen, welches respons qua diesseitigen Freispielen handhaben kannst. So lange 50 Freispiele abz\u00fcglich Einzahlung postwendend verf\u00fcgbar sind, bedeutet es, sic respons gunstgewerblerin Kontoer\u00f6ffnung effektuieren ferner dich eingeschaltet die Bonusbedingungen halten musst. Gl\u00fccksspielanbieter, diese Freispiele blank Einzahlung zur Regel\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-67514","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/67514","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=67514"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/67514\/revisions"}],"predecessor-version":[{"id":67515,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/67514\/revisions\/67515"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=67514"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=67514"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=67514"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}