/* 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":62810,"date":"2026-05-21T14:18:42","date_gmt":"2026-05-21T14:18:42","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=62810"},"modified":"2026-05-21T14:18:43","modified_gmt":"2026-05-21T14:18:43","slug":"posee-excelente-disparidad-sobre-juegos-asi%ef%bf%bd-como-las-bonos-semanales-favorecen-abundante","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/posee-excelente-disparidad-sobre-juegos-asi%ef%bf%bd-como-las-bonos-semanales-favorecen-abundante\/","title":{"rendered":"Posee excelente disparidad sobre juegos, asi\ufffd como las bonos semanales favorecen abundante"},"content":{"rendered":"

Nunca he sido dados problemas de entrar al propio cuenta y cualquier soluciona sobre forma fluida. Los metodos sobre pago son fiables desplazandolo hacia el pelo las retiros se podri\ufffdan mover procesan desprovisto demoras. Hice un deposito sin dificultades desplazandolo hacia el pelo cualquier el transcurso ha sido cristalino empezando desde nuestro comienzo. Me gusto una diversidad de juegos que existen y tambien en la disposicion de incursionar debido al sitio.<\/p>\n

Nuestro pagina web de moviles te ofrece las mismas acciones que la uso, incluidas opciones localizadas adaptadas a Portugal. Desarrollada de superiores desarrolladores de proyecto de juegos, nuestra empleo garantiza un juego fluido asi\ufffd como emocionantes prestaciones, lo que una hacen de sobre imprescindible de cualquier entusiasta de los casinos online. Gran cantidad de juegos de la empleo poseen la oportunidad sobre apostar sobre la demo, para que pudiese entrenar en situar dinero eficaz.<\/p>\n

Los jugadores son resulta trascendente y no ha transpirado su seguridad asi\ufffd como satisfaccion son particularmente importantes<\/h2>\n

Soluciona en emocionantes torneos para conseguir premios extras sobre efectivo y no ha transpirado giros gratis jugar a Coin Strike Hold and Win<\/a> . Betonred Casino guarda la interfaz importante y un portal sencillo con el fin de ofrecer una excepcional vivencia de juego acerca de los novios accesorios. Acerca de Betonred existe muchas tragaperras de compacto, juegos de banco asi\ufffd como juegos sobre crupier en listo, tal que son muy esgrimidas entre los jugadores de Ciertas zonas de espana.<\/p>\n

Levante casino en linea ofrece la amplia variacii?n de juegos, desde tragamonedas incluso emocionantes juegos sobre banco y experiencias que usan crupieres en avispado. Ambos monederos posibilitan cargar cesion mediante estrategias locales y transferirlo en tu cuenta sobre juego sin que la transaccion fondo aparezca categorizada como casino referente a tu jugo. Nuestro formulario acarrea lo tanto DNI espanol igual que NIE, por lo cual ciudadanos extranjeros referente a Chile pueden registrarse carente dificultades peritos de validacion.<\/p>\n

Solo el casino en linea Betonred puede ofrecer la experiencia sobre juego de mas fiable de Portugal. Una Bet On Trampa App de Android es la cereza de el torta para una destreza de juego ipad conveniente. Esto anade una mano especializada asi\ufffd como decision, si sabemos que existe algun apoyo cierto tras una plataforma de entretenimiento. La maleabilidad referente a los metodos sobre pago es principal para una buena vivencia sobre usuario, y no ha transpirado Bet On Trampa lo perfectamente comprende maravillosamente. Con el fin de una habilidad mayormente inmersiva, nuestro casino acerca de avispado con el pasar del tiempo crupieres reales acerca de juegos igual que Crazy Time en el caso de que nos lo olvidemos Power Blackjack resulta una posibilidad increible. Si prefieres la estrategia, los juegos sobre caja de ahorros como nuestro blackjack en el caso de que nos lo olvidemos nuestro poker estan a tu disposicion referente a multiples probabilidades.<\/p>\n

An envergadura que el cliente envite asi\ufffd como almacena faena, alcanza lugares que permiten andar por diferentes grados VIP. En BetOnRed reunimos slots, jackpots, juegos sobre asiento y casino referente a preparado con manga larga algun catalogo disei\ufffdado para Chile. Si, BetOnRed es con total seguridad gracias al oculto SSL, auditorias regulares y metodos sobre pago utilizadas acerca de Espana.<\/p>\n

Probe determinados juegos sobre casino desplazandolo hacia el pelo cualquier funciono de forma correcta, desprovisto problemas sobre exigencia<\/h2>\n

A volumen cual las jugadores se regalan a puntos a traves de es invierno labor llano, desbloquean ingresos tuneados. Determinados productos sobre giros ademas llegan a convertirse en focos de luces activan mediante misiones o torneos interiores, lo cual adjunta algun falo de competicii?n a la pericia. Inscribiri? aplican a una eleccion concreta sobre maquinas tragamonedas y permiten retar sin utilizar liquidacion conveniente, con la oportunidad de modificar los ganancias sobre credibilidad de esparcimiento dentro del respetar a los campos de puesta.<\/p>\n

BetOnRed ofrece la empleo smartphone total con el fin de accesorios iOS asi\ufffd como Android, permitiendo a las personas alcanzar a los productos por sus smartphones en el caso de que nos lo olvidemos tablets. Igualmente, los graficos de la mas superior calidad asi\ufffd como los comentarios en preparado deben una practica inmersiva, igual a la sobre un acontecimiento favorable. Una tarima complementa estas funciones en compania de estadisticas detalladas, estudio anteriores alrededor banderia y tambien en la posibilidad de emplazar empleando estrategias asi\ufffd como claves, ampliando de este modo los posibilidades de jugadores noveles desplazandolo hacia el pelo avanzados. Durante los llamados, la persona que es cliente suele preguntar est. detalladas que facilitan la toma sobre decisiones asi\ufffd como posibilitan contestar en lo cual pasa alrededor del parque indumentarias durante carretera. Alrededor apartado sobre juegos sobre asiento, Bet On Emboscada ofrece versiones por internet de los tipicos que todo jugador adulto expectacion hallar.<\/p>\n

Muchos casinos tienen una oportunidad sobre probar los juegos en modo demo desprovisto necesidad de situar recursos real. Determinar las prioridades os permitira disminuir el numero de opciones y no ha transpirado enfocarte sobre las casinos cual siguen igual que precisas. Nuestro inicial transito es establecer que angulos son importantes anonima sobre algun casino online. Ademi?s, existe casinos que ofrecen una gran oferta de juegos exclusivos, cosa que progreso significativamente la prueba del consumidor. Pueden marchar con generador de numeros aleatorios (RNG) o en la barra sobre formato casino acerca de preparado, en compania de crupieres reales transmitidos para streaming.<\/p>\n

Solamente deben bonos de perdedores, acerca de algunos que hay que desaprovechar todo nuestro dinero conveniente de obtener usar el bono, y no ha transpirado nuestra cuenta estaria condicionada inclusive cual completemos nuestro bono. Volvi a contactar cuidadosamente alrededor del usuario, algunos que vete al carajo hijo de una cabra dijeron que me pasarian la documentacion, cual nunca podian hacer solo. Vete al carajo hijo de una cabra comunique con el chat referente a avispado con el fin de informarles del inconveniente y no me dijeron que el inconveniente se habia determinado y no ha transpirado cual los bonos resultan visibles veloz. Dicho satisfaccion es importante de ustedes, querido, y haremos todo lo posible con el fin de superar el metodo de casino actual. Proporcione capturas de monitor de el nectar bancario. La satisfaccion de todos los clientes se oye importante para tu y no ha transpirado con el fin de indagar el caso joviales mas profusamente detalle y pueden contactenos por e-mail.<\/p>\n","protected":false},"excerpt":{"rendered":"

Nunca he sido dados problemas de entrar al propio cuenta y cualquier soluciona sobre forma fluida. Los metodos sobre pago son fiables desplazandolo hacia el pelo las retiros se podri\ufffdan mover procesan desprovisto demoras. Hice un deposito sin dificultades desplazandolo hacia el pelo cualquier el transcurso ha sido cristalino empezando\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-62810","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/62810","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=62810"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/62810\/revisions"}],"predecessor-version":[{"id":62811,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/62810\/revisions\/62811"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=62810"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=62810"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=62810"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}