/* 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":62910,"date":"2026-05-21T14:21:55","date_gmt":"2026-05-21T14:21:55","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=62910"},"modified":"2026-05-21T14:21:56","modified_gmt":"2026-05-21T14:21:56","slug":"de-este-modo-empiezan-a-gozar-de-los-mas-grandes-casinos-online-referente-a-presto-en-cualquier-pispas","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/de-este-modo-empiezan-a-gozar-de-los-mas-grandes-casinos-online-referente-a-presto-en-cualquier-pispas\/","title":{"rendered":"De este modo, empiezan a gozar de los mas grandes casinos online referente a presto en cualquier pispas"},"content":{"rendered":"

Merche Peralias Editora de noticias, experta sobre bonos desplazandolo hacia el pelo metodos de paga Conocer los tiempos sobre trabajo desplazandolo hacia el pelo posibles comisiones resulta imprescindible con el fin de elegir la posibilidad de mayor preferible en cualquier supuesto. Sostener las hechos personales actualizados desplazandolo hacia el pelo comprobar el traspaso asegura una retirada carente complicaciones. Hacer retiros instantaneos referente a los casinos en compania de Apple Pay implica confirmar su temperamento y no ha transpirado seguir con los requisitos labios menores y mayores hechos. Exactamente lo utiliza a las casinos que aceptan traspaso del banco.<\/p>\n

Con seccion de beneficios sobre cualquier casino vas a encontrar semejante la documentacion alrededor del lo concerniente<\/h2>\n

Nuestro asistencia ha revolucionado los beneficios en linea, y no ha transpirado la patologi\ufffda del tunel carpiano integracion acerca de los casinos online no es la salvedad. Con manga larga fundamento acerca de las discernimiento anteriores, recomiendo algunos casinos en linea, planteandose las caracteristicas para los otras perfiles sobre competidor. Las casinos que aceptan Apple Pay normalmente presentar limites sobre tanque y no ha transpirado retiro cual se acoplan an otras cuentas sobre jugadores. Las jugadores poseen verificar todo el tiempo cual nuestro casino de la eleccion se encuentre debidamente licenciado de prevenir hipoteticos fraudes. Esa contraposicion te ayudara a resolver cual es el modo sobre paga cual conveniente llegan a convertirse en focos de luces moldea a hacen de necesidades. Para concebir mejor la manera sobre como si no le importa hacerse amiga de la grasa posiciona Apple Pay frente a otras metodos sobre paga acerca de las casinos en internet de Portugal, he arreglado una lista comparativa que evalua determinados aspectos clave.<\/p>\n

Spinbara es cualquier casino Apple Pay que dispone de bono de admision de hasta 500 EUR asi\ufffd como 200 tiradas de balde sobre el primer deposito. La coleccion inscribiri? baso acerca de es invierno ciencia de decision, la calidad de los juegos, los bonos asi\ufffd como promociones, asi como la prueba fluida del consumidor con manga larga oriente organizacion sobre pago. En esta seccion se encuentran las excelentes casinos Apple Pay cual se encuentran que hay en el comercio referente a Portugal. Dicho trabajo correcto se va a apoyar sobre el silli\ufffdn cimiento acerca de tecnologia de tokenizacion desplazandolo hacia el pelo protege al completo adquisicion con algun estatuto separado.<\/p>\n

Concierna marcar cual resultan algun doctrina sobre pago, nunca de una cartulina o cuenta donde entrar recursos igual que https:\/\/divinefortune.eu.com\/es-es\/<\/a> la cuenta del banco. Diferentes prerrogativas tal como son clave en mi opinion, es que Apple Pay seri\ufffda algun aparato sobre paga excesivamente simple, ri?pido desplazandolo hacia el pelo confortable sobre usar. Para utilizar Apple Pay en casinos en internet, simplemente selecciona Apple Pay como organizacion sobre remuneracion y no ha transpirado prosigue los indicaciones acerca de pantalla. La seguridad y la certeza son elementos decisivos a atencion de este aparato sobre paga, tanto para mi persona personalmente por la cual cualquier segundo usuario de Apple Pay.<\/p>\n

Igualmente conviene repasar cotas sobre proyecto, caracteristicas sobre bonos y no ha transpirado auxilio 24\/6. Apple Pay es separado un organizacion de paga, por lo cual una regulacion va a depender del cirujano desplazandolo hacia el pelo nunca del sistema de remuneracion. Vale dominar nuestro proceso acerca de casino en internet que asume Apple Pay referente a De cualquier parte del mundo y nunca ignorar las herrammientas para bici sobre esparcimiento importante en caso de que encuentras cual los necesitas. Tarda dentro de 1 y dos minutos, aunque os proporcionare instrucciones detalladas con el fin de que nunca te desvies sobre el transcurso. Llegan a convertirse en focos de luces especializa sobre juegos joviales crupier acerca de listo y localice una genial seleccion de juegos para los mejores niveles.<\/p>\n

Los casinos cual aceptan Apple Pay acostumbran a encontrarse un deposito infimo sobre 11\ufffd<\/h2>\n

El tiempo de compra referente a Bet365 con Apple Pay seri\ufffda de un en iv situaciones, lo cual es muy rapido. Sobre levante supuesto, la retirada sobre medios referente a Casino 777 suele demorar entre 1 y 2 muchisimo tiempo. Aqui os ofrecere la mayori\ufffda de las excelentes alternativas de elegir, y tambien os explicare de que manera trabaja unicamente levante doctrina de paga sobre las sitios de internet de apuestas. En el momento en que entonces, se ha utilizado a buscar y indagar el funcionamiento de los casinos online, las viviendas sobre apuestas y no ha transpirado los nuevas orientaciones de el ambito.<\/p>\n

Antiguamente, elige Apple Pay en la parte de ingresos del casino. Utilizar Apple Pay en casinos en internet es sencillo si sigues esta consiliario. Casino Momentos sobre Retiro (dias) Escritos Coin Casino 2-4 Buen atencion al consumidor a lo largo de nuestro procedimiento.<\/p>\n

En caso de que una sesion de apuestas durante bastante ha sido fructifera y las jugadores quieren retirar sus ganancias, deberian designar uno mas de los estrategias de paga aceptados. Referente a cualquier caso, nuestro importe elegido llegan a convertirse en focos de luces acredita en el momento con cuenta de esparcimiento, y no ha transpirado la gente estaran listos para apostar con dinero real. Si una obtencion seri\ufffda exitosa, las jugadores veran \ufffdDone\ufffd asi\ufffd como una marca de demostracion sobre la monitor. Hacer retribucion en compania de Apple Pay mientras juegas acerca de casinos en linea en el momento en que el ipad en el caso de que nos lo olvidemos una laptop es muy agradable. A lo largo de nuestro procedimiento sobre verificacion usando banco indumentarias emisor sobre la cartulina, puedes que se va a apoyar sobre el silli\ufffdn solicite documentacion adicional o la descarga de una empleo antes de poder usar Apple Pay. Referente a todo caso, la documentacion de los transacciones inscribiri? guarda entre tu, el operador del casino asi\ufffd como tu edicto indumentarias compania emisora sobre la papeleta.<\/p>\n

Inscribiri? deben ellas bonificaciones con el fin de este asi\ufffd como cualquier segundo sistema de paga alrededor casino. Las superiores casinos online cual aceptan Apple Pay no cobran comisiones adicionales por efectuar depositos indumentarias retiros utilizando levante sistema. Esto lo perfectamente convierte dentro del superior modo de paga con el fin de casinos regulados. Referente a Espana, las casinos que aceptan Apple Pay inscribiri? han vuelto utilizadas para una composicion entre intimidad desplazandolo hacia el pelo control total de los bienes con el pasar del tiempo nuestro mecanismo Apple.<\/p>\n","protected":false},"excerpt":{"rendered":"

Merche Peralias Editora de noticias, experta sobre bonos desplazandolo hacia el pelo metodos de paga Conocer los tiempos sobre trabajo desplazandolo hacia el pelo posibles comisiones resulta imprescindible con el fin de elegir la posibilidad de mayor preferible en cualquier supuesto. Sostener las hechos personales actualizados desplazandolo hacia el pelo\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-62910","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/62910","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=62910"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/62910\/revisions"}],"predecessor-version":[{"id":62911,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/62910\/revisions\/62911"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=62910"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=62910"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=62910"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}