/* 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":60426,"date":"2026-05-21T11:19:54","date_gmt":"2026-05-21T11:19:54","guid":{"rendered":"https:\/\/klecet.edu.in\/alumni\/?p=60426"},"modified":"2026-05-21T11:19:55","modified_gmt":"2026-05-21T11:19:55","slug":"beilaufig-selbige-zahlungsmethoden-werden-vielfaltiger-mit-optionen-genau-so-wie-kryptowahrungen-selbige-hinein-europaischen-casinos-nichtens-verfugbar-eignen","status":"publish","type":"post","link":"http:\/\/klecet.edu.in\/alumni\/beilaufig-selbige-zahlungsmethoden-werden-vielfaltiger-mit-optionen-genau-so-wie-kryptowahrungen-selbige-hinein-europaischen-casinos-nichtens-verfugbar-eignen\/","title":{"rendered":"Beilaufig selbige Zahlungsmethoden werden vielfaltiger, mit Optionen genau so wie Kryptowahrungen, selbige hinein europaischen Casinos nichtens verfugbar eignen"},"content":{"rendered":"

Die Bonusangebote in casinos abzuglich oasis schlagen selbige deutschen Angebote sehr viel, wie auch bei der Highlight als auch bei der Vielfalt. Nachfolgende Zahlungsoptionen in casinos exklusive oasis werden deutlich vielfaltiger wanneer inside europaischen lizenzierten Anbietern weiters uberspannen plus traditionelle wie beilaufig contemporaine Verfahren. Ebendiese Unterschiede mitten unter casinos abzuglich oasis weiters europaischen lizenzierten Anbietern werden immens & angehen 5 vor 12 jedweder Aspekte wa Spielerlebnisses. Nichtsdestotrotz casinos blank oasis nur minimal automatischen Limits aufbauen, vorschlag seriose Provider ungeachtet Resources zur Triebkontrolle entsprechend Einzahlungslimits, Verlustgrenzen unter anderem Selbstausschlussmoglichkeiten in betrieb. Bevor zigeunern Gamer inside casinos frei oasis immatrikulieren, empfiehlt dies zigeunern, externe Bewertungsseiten zu befragen unter anderem Geschlechtswort durch deutschen Ki?a\ufffdufern hinter entziffern.<\/p>\n

Seriose Moglich Casinos abzuglich OASIS prasentieren deren Umsatzbedingungen oder aber sonstige Konditionen klar angeschaltet<\/h2>\n

Daruber hinaus ist und bleibt parece wesentlich, wirklich so Zahlungen schlichtweg abgewickelt man sagt, sie seien. Manche Casinos pluspunkt zu diesem zweck Ubersetzungstools, diese summa summarum zudem zuverlassig funktionieren.<\/p>\n

bVorteile fur ihr Risiken\/h Obgleich ihr genannten Risiken ermoglichen bE?Wallet?Anbieter\/h wie bSkrill\/h ferner bNeteller\/s Direktabhebungen, nachfolgende https:\/\/sweet-bonanza-1000.eu.com\/de-de\/<\/a> inoffizieller mitarbeiter In der mitte gelegen b15 Minuten\/bacillus auf Anforderung erhaltlich sind. Kryptowahrungen offerte aber schnellere Overforingen, jedoch schwankende Wechselkurse im griff haben das verfugbare Haben um bis zu b5 % reduzieren\/bacillus, wie selbige Schatzung bei bCoin\/type b pro einen Ecu?USD?Lehrgang besetzt. Selbige genannten Casinos vorstellen within einen Testdaten, so nachfolgende Auszahlungsbedingungen wieder und wieder folgende 25?fachige Umsatzpflicht ferner ‘ne 8?tagige Intervall vorsehen, had been welches Moglichkeit bei verzogerten Auszahlungen erhoht. Angaben zeigen, so sehr selbige Sportlichkeit?Inspektion bei OASIS?heranmachen Anbietern gegensatzlich lizenzierten Plattformen geringere Transparenz aufweist, welches nachfolgende Wahrscheinlichkeit durch gar nicht erkannten Manipulationen erhoht. Angaben vorzeigen, so sehr ebendiese durchschnittliche Ruckzahlungsquote (RTP) hinein einen getesteten Slots mitten unter ninety four % ferner before 2000 % liegt, ended up being zu erwarteten Verlusten von four % bis 8 % des Einsatzes fuhrt.<\/p>\n

Klicke vorrangig aufwarts unseren sicheren Internetadresse, um einfach zur offiziellen Seite durch Kingdom Spielbank hinter gelangen. Hierbei ist ihr kurzen Uberblick via diese gangigsten Bonusarten weiters wo du fortschrittlich unser besten Angebote findest. Erlebe zudem hochspannende weiters dynamische Varianten wie gleichfalls welches beliebte Lightning Line roulette uber sehr massiven Zufallsmultiplikatoren. Genie?e reibungsloses Gameplay und profitiere von blitzschnellen, unkomplizierten Krypto-Auszahlungen deiner konzeptionell erspielten Kartengewinne.<\/p>\n

Solange das erreichbar spielcasino exklusive oasis sperre ode ein deutschen Verantwortung tatig ist und bleibt, bedeutet sera keineswegs, so unter Sicherheitsstandards verzichtet sie sind wird. In neuer Rechtslage wird unser Offenheit in betrieb Glucksspielen as part of dem verbunden spielsalon blank oasis hemmschuh z. hd. Glucksspieler keineswegs strafbar, jedoch befinden die kunden umherwandern as part of welcher rechtlichen Grauzone. Das gro?te Nachteil beim Durchlauf hinein mark moglich spielsaal exklusive oasis barriere ist und bleibt selbige juristische Hader, in der umherwandern deutsche Glucksspieler ermessen. D. h., auf diese weise die leser erwartet keine deutschen Zahlungsmethoden, keinen deutschsprachigen Kundensupport & nur minimal gezielte Werbebanner je einen europaischen Markt andienen die erlaubnis haben.<\/p>\n

Der zuverlassiger Kundendienst sei ein sehr wichtiges Sigel fur einen seriosen Provider<\/h2>\n

Parece gibt jedoch einen Cashback-Vermittlungsgebuhr, diesseitigen wochentlichen Reload-Vermittlungsprovision unter anderem einen Kombiwetten-Boost. Viele Gamer eignen unter anderem gebannt, dass sowohl unser Webseite wie sekundar der Hilfe durch Powbet uff Deutsche sprache zuganglich sie sind. Endlich im stande sein unsereins erfassen, auf diese weise respons as part of dm Online Casino Vermittlungsprovision ohne Einzahlung doch fur sich entscheiden kannst – im wahrsten Sinne vos Wortes.<\/p>\n

Bei der Bevorzugung des moglich kasino abzuglich oasis sollten Gamer gro?en Bedeutung unter Luziditat wenn Namen achten. Die Sicherheitsaspekte hinein dm online spielbank exklusive oasis hangt wesentlich bei ihr Form ein Lizenzierung nicht eher als. Welches Alive-Casino-Vorschlag fallt in dm gangbar kasino exklusive oasis gerade allumfassend aufgebraucht, mit zahlreichen Tischen fur jedes The roulette table, Blackjack, Baccarat und Poker bei wichtige Varianten. Auch beliebte Spiele, die bei Teutonia auf keinen fall zuganglich sind, fahig sein exklusive Einschrankungen gespielt sind, is selbige Gedankenaustausch akzentuiert erhoht. Ein angeschlossen spielcasino blank oasis finden sie auf aber Einblick hinten Tausenden durch Geben aller fuhrenden Provider global. Jackpot-Automaten ferner Stay-Spiele qua gro?zugigen Limits seien frei Beschrankungen zuganglich, is dies Spielerlebnis deutlich des ofteren.<\/p>\n","protected":false},"excerpt":{"rendered":"

Die Bonusangebote in casinos abzuglich oasis schlagen selbige deutschen Angebote sehr viel, wie auch bei der Highlight als auch bei der Vielfalt. Nachfolgende Zahlungsoptionen in casinos exklusive oasis werden deutlich vielfaltiger wanneer inside europaischen lizenzierten Anbietern weiters uberspannen plus traditionelle wie beilaufig contemporaine Verfahren. Ebendiese Unterschiede mitten unter casinos abzuglich\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-60426","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/60426","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=60426"}],"version-history":[{"count":1,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/60426\/revisions"}],"predecessor-version":[{"id":60427,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/posts\/60426\/revisions\/60427"}],"wp:attachment":[{"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/media?parent=60426"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/categories?post=60426"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/klecet.edu.in\/alumni\/wp-json\/wp\/v2\/tags?post=60426"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}