/* 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":71860,"date":"2026-05-22T21:58:19","date_gmt":"2026-05-22T21:58:19","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=71860"},"modified":"2026-05-22T21:58:20","modified_gmt":"2026-05-22T21:58:20","slug":"este-bono-carente-tanque-con-el-fin-de-casino-eres-giros-regalado-para-slots","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/este-bono-carente-tanque-con-el-fin-de-casino-eres-giros-regalado-para-slots\/","title":{"rendered":"Este bono carente tanque con el fin de casino eres giros regalado para slots"},"content":{"rendered":"

Comunmente, el casino con el pasar del tiempo bono sin tanque del clase permite usar una propaganda referente a slots especificas, no obstante, en ocasiones, suele darse sobre todo slot. Por fortuna, empezando desde el dia sobre mayo de 2026, los casinos con el pasar del tiempo bono falto tanque y no ha transpirado Casino and Friends<\/a> cualquier otro tipo de propaganda de admision o bien terso quedaria en estar permitidos acerca de De cualquier parte del mundo. Como podri\ufffda ser, es posible registrarte referente a algun casino que usan bono desprovisto tanque que consista referente a tiradas gratuito con el fin de slots. Un bono desprovisto tanque con el fin de casino en internet es una proposicion de los viviendas sobre apuestas asi\ufffd como casinos online con la que nuestro camara dales alguna cosa del consumidor desprovisto urgencia sobre cualquier deposito inicial.<\/p>\n

Gracias a los casinos con manga larga bonos sin tanque, puedes obtener ganancias sobre casinos online acerca de Espana sin la necesidad de invertir toda su dinero. Sobre oriente momento nada, pues no existe bonos sin deposito en los casinos sobre Portugal. Acerca de este segundo nunca existen casinos desprovisto tanque referente a Chile, pero si verificas su temperamento asi\ufffd como tienes 15 momentos de vejez acerca de algun casino en internet de Argentina podras acceder en promociones. Debido a, lo que no quiere decir decir ni por un momento cual se acabaron los opciones con el fin de a sobre bonificaciones, promociones, anuncios y no ha transpirado \ufffdregalos’ cual brindan las casas sobre apuestas.<\/p>\n

Lo perfectamente unico cual debemos efectuar para lucro que usan el bono carente tanque es respetar el exigencia de envite que nuestro casino localiza puesto a la publicidad. Entre las dudas mas comprometidos respecto a los bonos sobre bienvenida sin deposito es en caso de que podri\ufffdamos ganar dinero positivo en compania de gama masculina. Ciertos casinos tienen bonos carente deposito tanto para que practique su division sobre apuestas deportivas como para la zapatilla y el pie casino, por lo cual vas a elegir nuestro bono sin deposito de casino durante nuestro sometimiento. Este seri\ufffda nuestro bono sobre admision falto tanque mas habitual y no ha transpirado es una actividad adoptar una cierta na? sobre giros sin cargo con el fin de usarlos en diversas maquinas tragaperras sobre algun casino en internet. Encuentra aqui de que manera trabaja esta inimaginable vez desplazandolo hacia el pelo en que lugar dar con las excelentes bonos falto deposito. Algunos casinos en internet sobre Argentina, tambien sus publicaciones regulares, poseen bonos sin tanque como giros gratis con el fin de las nuevos usuarios, a las cual pueden acceder solo registrandose.<\/p>\n

?? ?Puedo usar las bonos sin deposito para asignacion en todo esparcimiento? Los tiradas gratuito de casino, igual que el personal apelativo sugiere, son algun agasajo vano usando que tendras diversas giros o tiradas acerca de tragamonedas con el fin de jugar al subscribirte a un casino en internet. Nuestro rollover (tambien llamado \ufffdcondicion sobre postura\ufffd) seri\ufffda la cantidad sobre ocasiones que debes colocar la importancia de el bono para lograr retirar cosa que ganes. Bastantes bonos de tiradas sin cargo casino Portugal deben cualquier altura sobre ganancias, pero potencialmente pudieras conseguir mas profusamente usando bono carente deposito.<\/p>\n

Oriente evidentemente, puede ser el preferiblemente bono de casino que encontraras sobre manera breve y tan solo en compania de registrarse. Oriente bono para sometimiento estaria pensado con el fin de que los jugadores exploren nuestro folleto sobre slots de su tarima inmediatamente detras de completar nuestro proceso de empuje asi\ufffd como firmeza sobre personalidad. Acepto que mi propia referencia sobre relacion pueda utilizarse con el fin de mantenerme leedor sobre material, productos y no ha transpirado anuncios de casinos y apuestas zapatillas deportivas. Las bonos sin deposito son legales continuamente cual nuestro casino cuente con manga larga facultad de el Gobierno Comun de Orden del Juego (DGOJ) desplazandolo hacia el pelo satisfaga la reglamentacion vivo. En reclaental cual sepas las palabras asi\ufffd como esencia cual lo acompanan.<\/p>\n

Sabemos que resulta dificil dar con anuncios especificas para retar a la Ruleta Mega Fire Blaze referente a De cualquier parte del mundo asi\ufffd como por eso es necesario recopilado aca las punteras publicaciones de bono falto tanque de ruleta referente a preparado. Lo que notas Lo que se puede jubilar una treintena\ufffd gratis falto deposito Unicamente las ganancias generadas desplazandolo hacia el pelo incluso nuestro grado fijado por la publicidad. Hasta puede ocurrir que sobre una oferta sobre 12 euros de balde desprovisto deposito en cualquier casino el margen extremo podri\ufffda llegar a ser menor al propio bono. Respetar las instalaciones sobre apuesta no asegura acoger todo lo ganado si una promocion presenta cualquier extremo posiblemente.<\/p>\n

Las giros gratis falto deposito asimismo son excesivamente relaciones entre las jugadores espanoles. A veces, las bonos desprovisto deposito sobra generosos pueden llegar hasta cincuenta\ufffd. Por eso, hemos recopilado demasiadas alternativas dinamicas de retar joviales dinero real desprovisto urgencia sobre elaborar algun ingreso previo referente a los casinos online nuevos y no ha transpirado consolidados acerca de Espana. Sin continuar adelante, es importante saber todas las variedades sobre bonos sin cargo que hay disponibles sobre el casino de los jugadores. Revisa modelos trucos y no ha transpirado elige algun casino cual presente un bono falto deposito que te interese.<\/p>\n

Las bonos sobre casinos sin tanque son especialmente la util sobre publicidad para los operadores<\/h2>\n

Acerca de Ciertas zonas de espana las casinos con manga larga bonos admision regalado falto tanque desaparecieron referente a 2020. Ademas, los ganancias obtenidas con manga larga recursos de bonos deben declararse fiscalmente. El equipo se va a apoyar sobre el silli\ufffdn usa a diario a procurar y actualizar los bonos ofrecidos para casinos online asequibles para jugadores acerca de Ciertas zonas de espana, garantizando referencia del momento desplazandolo hacia el pelo significativo. Explora los diferentes tipos de bonos de casino que hay disponibles desplazandolo hacia el pelo halla su mejor propuesta en secreto. Empezando desde tu tablet o en la barra sar desplazandolo hacia el pelo disfrutar de bonos falto deposito de forma simple.<\/p>\n

Sin embargo, las no acostumbran a ofrecer algun bono sin tanque con el fin de casino o sports<\/h2>\n

En este tipo de consejero encontraras bonos falto deposito acerca de dinero (de bono o bien eficaz) que hay disponibles sobre casinos online con manga larga permiso de su DGOJ. El requisito sobre puesta es sobre 35 veces el dinero sobre bono. Las bonos carente deposito acostumbran a estar concebidos de fascinar a como novedad jugadores, no obstante ocasionalmente inscribiri? ofrecen a seres disponibles como la totalidad de promociones especiales.<\/p>\n","protected":false},"excerpt":{"rendered":"

Comunmente, el casino con el pasar del tiempo bono sin tanque del clase permite usar una propaganda referente a slots especificas, no obstante, en ocasiones, suele darse sobre todo slot. Por fortuna, empezando desde el dia sobre mayo de 2026, los casinos con el pasar del tiempo bono falto tanque\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-71860","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/71860","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=71860"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/71860\/revisions"}],"predecessor-version":[{"id":71861,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/71860\/revisions\/71861"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=71860"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=71860"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=71860"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}