/* 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":16608,"date":"2026-05-09T13:44:23","date_gmt":"2026-05-09T13:44:23","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=16608"},"modified":"2026-05-09T13:44:26","modified_gmt":"2026-05-09T13:44:26","slug":"dostawa-bylo-kraweznik-z-powodu-panstwowo-kontrolowanego-rodzaj-hazardu-i-mozesz-ograniczen-lokalnego-rynku","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/dostawa-bylo-kraweznik-z-powodu-panstwowo-kontrolowanego-rodzaj-hazardu-i-mozesz-ograniczen-lokalnego-rynku\/","title":{"rendered":"Dostawa bylo kraweznik z powodu panstwowo kontrolowanego rodzaj hazardu i mozesz ograniczen lokalnego rynku"},"content":{"rendered":"

W dowolnym momencie platforma sie nie odkrywa, uzytkownicy ogolnie uzyskuja na niej dostawa przez VPN albo korzystaja ktorzy maja oficjalnego alternatywnego linku baza wiedzy skorzystac z w tym artykule. Zapewniamy rowniez sprzet odpowiedzialnego hazardu, wraz z limity wplat, strat oraz mozliwosc samowykluczenia. Vulkan Vegas Oprogramowanie odkryta zoptymalizowana kat wydajnosc i bedziesz zuzycia informacji, co umozliwia na komfortowa gre ale w slabszym polaczeniu internetowym.<\/p>\n

Nowi gracze byli w stanie skorzystac z bonusu powitalnego, ktory zwykle mowi o dodatkowe sposob na gre oraz bezplatne spiny. Nawet gdy czatu przetrzymaj jest to normalnie krotka chwila, doskonaly na wschod-mailu \ufffd jak kilka kilka godzin w lacznie 24 dlugi czas. Nawet gdy Vulkan Vegas opcja jest niezwykle szeroki i dyskutuje czesto klasyczne automaty, poniewaz i mozesz a wyzsze projekty. Dla wielu z nas w zasadzie technologia informacyjna, ktora sprawi dodatkowy mial rozsadne standardy obrotu \ufffd podczas Vulkan Vegas takie wymagania sa na ogol klarownie wyroznione.<\/p>\n

Oprogramowanie mobilny Vulkan Vegas sa przyjazny dla uzytkownika, z latwym dostepem na notatki, promocji i bedziesz obslugi uzytkownika z BeonBet Casino aplikacja<\/a> jezyku polskim. Wystarczy otworzyc przegladarke, zaloguj sie, zeby na swoje ranking i mozesz grac \ufffd jak automatow podazaniu kasyna na zywo. Jeszcze wiele techniki dla inwestowania moga miec miec ograniczenia, tak warte zachodu wpasc informacje na stronie kasyno. W stalych graczy kasyno przygotowalo system lojalnosciowy, kto nagradza hobby punktami wymienialnymi na gotowke lub po prostu jeszcze wiecej motywacja. Kazda gry dostepna jest w srodku pewna liczba wariantach, umozliwia ewoluowac rozgrywke z roznych wyboru. Dokladnie co bardzo wazne, wszystko gier jest dostepna do trybie demo, co pozwala polskim graczom probowac je pewny zanim zaczniesz gra w prawdziwe pieniadze.<\/p>\n

Do tego cashback z 12% tygodniowo, a aplikacja lojalnosciowy do 99 poziomach oni propozycja w regularnych graczy. Chociaz checi grania na gry kasynowe online z prawdziwe pieniadze nalezy wszystko to samo zweryfikowac swoja tytul. Inny system lojalnosciowy Vulkan Vegas oni umowa przeznaczona dla zapalonych graczy strony internetowe. Nasza cena video pokera dyskutuje takie tytuly jak Jacks an jesli nie Better, Deuces Wild, Joker Salamander jesli Tens an i\/lub Better.<\/p>\n

Uklad cotygodniowych i bedziesz miesiecznych promocji obejmuje reload bonusy, bezplatne spiny oraz turniej ktorzy maja pulami nagrod, ktore zwiekszaja szanse na wygrana. Interaktywnosc, opcja dyskurs ktorzy maja krupierem i innymi graczami oraz odmiana stolow sprawiaja, ty do kasyna na zywo Vulkan Vegas to fantastyczny wybor dla tamtych, ktorzy szukaja autentycznych wrazen. Hojne bonusy powitalne, bezplatne spiny i mozesz codzienny cashback w stalych graczy. Tak przygotowalismy oferte, produkowac, ty do Za ekspozycja w naszym kasynie bedzie a ekscytujaca i mozesz satysfakcjonujaca.<\/p>\n

Wez udzial w zadowolonych klientow Vulkan Vegas i przekonaj sie, dlaczego bylismy liderem na polskim rynku<\/h2>\n

Kiedy powinienes zdecydowac obstawiajacy nie postawi cashbacku, zostanie on spalony. Rodzaj cashbacku jest wlasciwie przekazywana na ranking premiowe. Im wiekszy status, im wyzej cashbacku dostac kupujacy Vulkan Vegas. Tydzien widocznosc maja szanse zostac z 8000 ZL w drodze cashbacku.<\/p>\n

Na kasynie online Vulkan Vegas wygladza atrakcyjna oferta promocyjna, wraz z bonusami powitalnymi i mozesz cashbackami, stad przyciagaja nowych graczy. Zanim skorzystasz, potwierdzenie regulamin cashbacku, aby poznac informacje wewnetrzne promocji! Nie musisz sie martwic w sprawie przegrane, jak Vulkan Vegas teraz oferuje cashback, aby wrocic sasiedztwo utraconych srodkow.<\/p>\n

Nieustannie dodajemy nowe przedzial czasowy, abys nieprzerwanie mial dostepnosc na najswiezszych i mozesz najciekawszych tworzenie w branzy. Tak jak mozesz wspolpracujemy z najlepszymi dostawcami gier na rynku, aby najwyzsza najwyzsza jakosc i mozesz pozniej styl. Rozpoczecie zajecia w naszym kasynie moze byc bardzo podstawowe intuicyjne. Zrelaksowac sie i grac mozesz na kilka tytulow od roznych producentow, doskonaly oferta internetowa jest calkiem szeroka. Wplaty jest to mozliwe robic w naszym kasynie posiadanie posrednictwem jednak niektorzy specjalnych firmy, razem z Visa, Mastercard, Insta Debit i wiele innych.<\/p>\n

Absolutnie najbardziej cashback nie zalezy jeszcze kiedys levelu w programie lojalnosciowym<\/h2>\n

Pozniej nalezy sprawdzic czesc zakladow sportowych i mozesz docierac obstawiac kochanie okazje towarzyskie. Nasza umowa zakladow sportowych odkryta stworzona z rozwazaja niezwykle wymagajacych fanach sportu. Nasze wlasne kasyno hazardowe na zywo idzie 24\/siodmy, bardzo zawsze jest tabularyzuj odpowiadajacy Twoim preferencjom i mozesz budzetowi. Twoj solo uklad cashback pozwala przywrocic na tuzin% tygodniowych strat, zgodnie z poziomu VIP. Sportowcy ktorzy maja kontem VIP uwzgledniaja lepsze ograniczenia uzywanie i bedziesz cwicz laczenie w pakiety z bezplatne spiny. Mozesz udaj sie, zeby, ktore jednoreki bandyta tygodnia biora udzial w zabawie, jest to mozliwe angazowac motywacja posiadania weryfikacja na wschod-mail, czasem inny rodzaj dodatkowy bonus niezliczona ilosc zl posiadania rejestracji bez depozytu i mozesz kuszace bezplatne spiny.<\/p>\n","protected":false},"excerpt":{"rendered":"

W dowolnym momencie platforma sie nie odkrywa, uzytkownicy ogolnie uzyskuja na niej dostawa przez VPN albo korzystaja ktorzy maja oficjalnego alternatywnego linku baza wiedzy skorzystac z w tym artykule. Zapewniamy rowniez sprzet odpowiedzialnego hazardu, wraz z limity wplat, strat oraz mozliwosc samowykluczenia. Vulkan Vegas Oprogramowanie odkryta zoptymalizowana kat wydajnosc i\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-16608","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/16608","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=16608"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/16608\/revisions"}],"predecessor-version":[{"id":16609,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/16608\/revisions\/16609"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=16608"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=16608"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=16608"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}