{"id":2263,"date":"2024-03-01T10:01:59","date_gmt":"2024-03-01T10:01:59","guid":{"rendered":"https:\/\/wpshortcode.org\/?p=2263"},"modified":"2024-03-01T10:01:59","modified_gmt":"2024-03-01T10:01:59","slug":"easy-contact","status":"publish","type":"post","link":"https:\/\/wpshortcode.org\/easy-contact\/","title":{"rendered":"Easy Contact Shortcode"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Below, you&#8217;ll find a detailed guide on how to add the <strong>Easy Contact Shortcode<\/strong> to your WordPress website, including its <strong>parameters<\/strong>, <strong>examples<\/strong>, and <strong>PHP function code<\/strong>. Additionally, we&#8217;ll assist you with common issues that might cause the Easy Contact Plugin shortcode not to show or not to work correctly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Before starting, here is an overview of the Easy Contact Plugin and the shortcodes it provides:<\/p>\n\n\n<p>    <div class=\"plugin-info-box\">\n        <div class=\"top-main\">\n            <!-- SVG Image -->\n            <div class=\"plugin-image\">\n                <img decoding=\"async\" src=\"https:\/\/s.w.org\/plugins\/geopattern-icon\/virtue-toolkit.svg\" alt=\"Plugin Icon\" \/>\n            <\/div>\n            \n            <div class=\"plugin-descriptive-part\">\n                <!-- Plugin Name with Link -->\n\n                    <a class=\"plugin-title\" href=\"https:\/\/wordpress.org\/plugins\/easy-contact\" target=\"_blank\" rel=\"noopener\">\n                        Easy Contact                    <\/a>\n\n\n                <!-- Plugin Description -->\n                <p class=\"plugin-description\">\n                    &quot;Easy Contact is a user-friendly WordPress plugin that simplifies communication by adding an efficient contact form to your website. It&#039;s ideal for enhancing user interaction and engagement.&quot;                <\/p>\n            <\/div>\n        <\/div>\n\n        <!-- Rating and Additional Info -->\n        <div class=\"plugin-meta\">\n            <span class=\"plugin-rating\">\n                <span class='stars'>\u2605\u2605\u2605\u2605\u2729<\/span> (3)\n            <\/span>\n            <span class=\"plugin-active-installs\">\n                <strong>Active Installs<\/strong>: 2000+\n            <\/span>\n            <span class=\"plugin-tested\">\n                <strong>Tested with<\/strong>: 2.6.1            <\/span>\n            <span class=\"plugin-php-version\">\n                <strong>PHP Version<\/strong>: false            <\/span>\n        <\/div>\n\n        <!-- List of Included Shortcodes -->\n        <div class=\"plugin-shortcodes\">\n            <strong>Included Shortcodes:<\/strong>\n            <ul>\n                <li>[easy-contact]<\/li>            <\/ul>\n        <\/div>\n    <\/div>\n    <\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Easy Contact [easy-contact] Shortcode<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The &#8216;easy-contact&#8217; shortcode from the Easy Contact plugin initiates a contact form on your WordPress site. It collects user input, validates it, and sends an email to the specified recipient.\n\n\n\nUpon form submission, the shortcode function &#8216;ec_shortcode&#8217; processes the data. It checks if the input is valid, constructs an email message, and sends it. If the input is invalid, it generates a form with error messages.\n\nThe form includes fields for name, email, website, subject, and message. It also provides options for a spam-reduction question and a checkbox for users to receive a copy of the message.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Shortcode<\/strong>: <code>[easy-contact]<\/code><\/p>\n\n\n\n<div style=\"height:5px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Examples and Usage<\/h3>\n\n\n<p><strong>Basic example<\/strong> &#8211; Display the contact form on your page or post with the default settings.<\/p>\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">[easy-contact]<\/code><\/pre>\n\n\n<p><strong>Advanced examples<\/strong><\/p>\n<p>Display the contact form on your page or post with custom attributes. The attributes allow you to customize the behavior of the contact form.<\/p>\n<p>Example 1: Using the shortcode to display a contact form with a custom recipient and subject. The recipient email and subject line will be used when sending the email.<\/p>\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">[easy-contact recipient=\"example@example.com\" subject=\"Custom Subject\"]<\/code><\/pre>\n\n\n<p>Example 2: Using the shortcode to display a contact form with a custom success message. The success message will be displayed to the user after they submit the form.<\/p>\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">[easy-contact success_message=\"Thank you for contacting us! We will get back to you soon.\"]<\/code><\/pre>\n\n\n<p>Please note that in the advanced examples, you need to replace the attribute values with your own. For instance, replace &#8220;example@example.com&#8221; with the actual email address where you want to receive the contact form submissions.<\/p>\n\n\n<div style=\"height:5px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">PHP Function Code<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In case you have difficulties debugging what causing issues with <code>[easy-contact]<\/code> shortcode, check below the related PHP functions code.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Shortcode line<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">add_shortcode( 'easy-contact', 'ec_shortcode' );<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Shortcode PHP function<\/strong>:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: php; light: false; title: ; toolbar: true; notranslate\" title=\"\">\nfunction ec_shortcode($attr) {\n\tglobal $ec_form_fields;\n\t\/\/ If we&#039;re processing $POST data without a problem, let&#039;s send an email\n\tif ( ec_check_input() ) {\n\t\t\/\/ Let&#039;s get some variables we&#039;re going to use multiple times\n\t\t$cc_option     =  get_option(&#039;ec_option_cc&#039;);\n\t\t$recipient     =  attribute_escape(get_option(&#039;ec_recipient_name&#039;)) . &#039; &lt;&#039; . attribute_escape(get_option(&#039;ec_recipient_email&#039;)) . &#039;&gt;&#039;;\n\t\t$user          =  strip_tags(trim($_POST&#91;&#039;ec_name&#039;])) . &#039; &lt;&#039; . strip_tags(trim($_POST&#91;&#039;ec_email&#039;])) . &#039;&gt;&#039;;\n\t\t$orig_referer  =  strip_tags(trim($_POST&#91;&#039;ec_orig_referer&#039;]));\n\t\t$keywords      =  ec_get_query($orig_referer);\n\t\t\/\/ Start our email with its headers\n\t\t$headers       =  &quot;MIME-Version: 1.0\\r\\n&quot;;\n\t\t\/\/ Our form has to match the encoding the user is typing it in, i.e., your blog charset\n\t\t$headers      .=  &#039;Content-Type: text\/plain; charset=&quot;&#039; . get_option(&#039;blog_charset&#039;) . &quot;\\&quot;\\r\\n&quot;;\n\t\t\/\/ Our generic mailer-daemon is just going to be WordPress@EXAMPLE.COM, where EXAMPLE.COM is your domain in lowercase\n\t\t$sitename      =  strtolower($_SERVER&#91;&#039;SERVER_NAME&#039;]);\n\t\t\/\/ If we have the www., let&#039;s drop it safely\n\t\tif ( substr( $sitename, 0, 4 ) == &#039;www.&#039; ) {\n\t\t\t$sitename  =  substr( $sitename, 4 );\n\t\t}\n\t\t\/\/ Our from email address\n\t\t$from_email    =  apply_filters( &quot;wp_mail_from&quot;, &quot;wordpress@$sitename&quot; );\n\t\t\/\/ Our from email name\n\t\t$from_name     =  apply_filters( &#039;wp_mail_from_name&#039;, &#039;WordPress&#039; );\n\t\t\/\/ And we begin the headers\n\t\t$headers      .=  &quot;From: $from_name &lt;$from_email&gt;\\r\\n&quot;;\n\t\t$headers      .=  &quot;Reply-To: $user\\r\\n&quot;;\n\t\t\/\/ Since we allow CC&#039;ing, we can smartly only send one email\n\t\tif ( $cc_option &amp;&amp; $_POST&#91;&#039;ec_option_cc&#039;] ) {\n\t\t\t\/\/ If CC&#039;ing, we&#039;ll BCC: you and TO: the user.\n\t\t\t$to        =  $user;\n\t\t\t$headers  .=  &quot;Bcc: $recipient\\r\\n&quot;;\n\t\t} else {\n\t\t\t\/\/ If no, just TO: you.\n\t\t\t$to        =  $recipient;\n\t\t}\n\t\t\/\/ We should include X data for the mailer version\n\t\t$headers      .=  &#039;X-Mailer: PHP\/&#039; . phpversion() . &quot;\\r\\n&quot;;\n\t\t\/\/ Build our subject line fo the email\n\t\t$subject       =  attribute_escape(get_option(&#039;ec_subject&#039;)) . &#039; &#039; . $_POST&#91;&#039;ec_subject&#039;];\n\t\t\/\/ And our actual message with extra stuff\n\t\t$message       =  strip_tags(trim($_POST&#91;&#039;ec_message&#039;])) . &quot;\\n\\n---\\n&quot;;\n\t\t$message      .=  __( &#039;Website: &#039;, &#039;easy_contact&#039; ) . strip_tags(trim($_POST&#91;&#039;ec_url&#039;])) . &quot;\\n\\n---\\n&quot;;\n\t\t$message      .=  __( &#039;IP address: &#039;, &#039;easy_contact&#039; ) . &#039;http:\/\/ws.arin.net\/whois\/?queryinput=&#039; . ec_get_ip() . &quot;\\n&quot;;\n\t\t\/\/ Don&#039;t show keywords in the email unless we have some\n\t\tif ($keywords) {\n\t\t\t$message  .=  __( &#039;Keywords: &#039;, &#039;easy_contact&#039; ) . $keywords . &quot;\\n&quot;;\n\t\t}\n\t\t$message      .=  __( &#039;Form referrer: &#039;, &#039;easy_contact&#039; ) . strip_tags(trim($_POST&#91;&#039;ec_referer&#039;])) . &quot;\\n&quot;;\n\t\t$message      .=  __( &#039;Orig. referrer: &#039;, &#039;easy_contact&#039; ) . $orig_referer . &quot;\\n&quot;;\n\t\t$message      .=  __( &#039;User agent: &#039;, &#039;easy_contact&#039; ) . trim($_SERVER&#91;&#039;HTTP_USER_AGENT&#039;]) . &quot;\\n&quot;;\n\t\t\/\/ Let&#039;s build our email and send it\n\t\tmail( $to, $subject, $message, $headers );\n\t\t\/\/ And then build the response message output for the user\n\t\t$output = &quot;\\n&quot; . &#039;&lt;div class=&quot;formcontainer&quot;&gt;&#039; . &quot;\\n\\t&quot; . stripslashes(get_option(&#039;ec_msg_success&#039;)) . &quot;\\n&lt;\/div&gt;&quot;;\n\t\t\/\/ Returns the success message to the user\n\t\treturn $output;\n\t\/\/ Otherwise, let&#039;s build us a form\n\t} else {\n\t\t\/\/ We begin our form.\n\t\t$form = &#039;&lt;div class=&quot;formcontainer&quot;&gt;&#039;;\n\t\t\/\/ If we have an error, display it\n\t\tif ( $ec_form_fields&#91;&#039;error&#039;] != null ) {\n\t\t\t\/\/ Display an error message first. (We&#039;re applying our own easy_contact_text filter to prettify the message.)\n\t\t\t$form .= &quot;\\n\\t&quot; . apply_filters( &#039;easy_contact_text&#039;, stripslashes($ec_form_fields&#91;&#039;error&#039;]) );\n\t\t} else {\n\t\t\t\/\/ Otherwise, display the intro message. (Also, filter this too.)\n\t\t\t$form .= &quot;\\n\\t&quot; . apply_filters( &#039;easy_contact_text&#039;, stripslashes(get_option(&#039;ec_msg_intro&#039;)) );\n\t\t}\n\t\t\/\/ Gather variables for multiple uses\n\t\t$required = stripslashes(get_option(&#039;ec_text_required&#039;));\n\t\t$option_verf = get_option(&#039;ec_option_verf&#039;);\n\t\t\/\/ And continuing with our form\n\t\t$form .= &#039;\n\t&lt;form class=&quot;contact-form&quot; action=&quot;&#039; . get_permalink() . &#039;&quot; method=&quot;post&quot;&gt;\n\t\t&lt;fieldset&gt;\n\t\t\t&lt;legend&gt;&#039; . attribute_escape(get_option(&#039;ec_field_info&#039;)) . &#039;&lt;\/legend&gt;\n\t\t\t&lt;div class=&quot;form-label&quot;&gt;&lt;label for=&quot;ec_name&quot;&gt;&#039; . stripslashes(wp_filter_post_kses(get_option(&#039;ec_label_name&#039;))) . &#039; &#039; . $required . &#039;&lt;\/label&gt;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-input&quot;&gt;&#039; . $ec_form_fields&#91;&#039;name&#039;] . &#039;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-label&quot;&gt;&lt;label for=&quot;ec_email&quot;&gt;&#039; . stripslashes(wp_filter_post_kses(get_option(&#039;ec_label_email&#039;))) . &#039; &#039; . $required . &#039;&lt;\/label&gt;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-input&quot;&gt;&#039; . $ec_form_fields&#91;&#039;email&#039;] . &#039;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-label&quot;&gt;&lt;label for=&quot;ec_url&quot;&gt;&#039; . stripslashes(wp_filter_post_kses(get_option(&#039;ec_label_website&#039;))) . &#039;&lt;\/label&gt;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-input&quot;&gt;&#039; . $ec_form_fields&#91;&#039;url&#039;] . &#039;&lt;\/div&gt;\n\t\t&lt;\/fieldset&gt;\n\t\t&lt;fieldset&gt;\n\t\t\t&lt;legend&gt;&#039; . attribute_escape(get_option(&#039;ec_field_message&#039;)) . &#039;&lt;\/legend&gt;\n\t\t\t&lt;div class=&quot;form-label&quot;&gt;&lt;label for=&quot;ec_subject&quot;&gt;&#039; . stripslashes(wp_filter_post_kses(get_option(&#039;ec_label_subject&#039;))) . &#039; &#039; . $required . &#039;&lt;\/label&gt;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-input&quot;&gt;&#039; . $ec_form_fields&#91;&#039;subject&#039;] . &#039;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-label&quot;&gt;&lt;label for=&quot;ec_message&quot;&gt;&#039; . stripslashes(wp_filter_post_kses(get_option(&#039;ec_label_message&#039;))) . &#039; &#039; . $required . &#039;&lt;\/label&gt;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-textarea&quot;&gt;&#039; . $ec_form_fields&#91;&#039;message&#039;] . &#039;&lt;\/div&gt;\n\t\t&lt;\/fieldset&gt;\n\t\t&lt;fieldset&gt;\n\t\t\t&lt;legend&gt;&#039; . attribute_escape(get_option(&#039;ec_field_confirm&#039;)) . &#039;&lt;\/legend&gt;&#039;;\n\t\t\/\/ If employing a spam-reduction question, insert it\n\t\tif ( $option_verf &gt; 1 ) {\n\t\t\tif ( $option_verf == 2 || $option_verf == 4 ) {\n\t\t\t\t$form .= &#039;\n\t\t\t&lt;div class=&quot;form-label&quot;&gt;&lt;label for=&quot;ec_challenge_a&quot;&gt;&#039; . apply_filters( &#039;easy_contact_text&#039;, stripslashes(wp_filter_post_kses(get_option(&#039;ec_challenge_q&#039;))) ) . &#039; &#039; . $required . &#039;&lt;\/label&gt;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-input&quot;&gt;&#039; . $ec_form_fields&#91;&#039;challenge_a&#039;] . &#039;&lt;\/div&gt;&#039;;\n\t\t\t}\n\t\t\tif ( $option_verf == 3 || $option_verf == 4 ) {\n\t\t\t\t\/\/ Big number is between 1 and 1,000.\n\t\t\t\t$big = rand( 1, 1000 );\n\t\t\t\t\/\/ Small number is between 1 and 10.\n\t\t\t\t$small = rand( 1, 10 );\n\t\t\t\t\/\/ We need to remember this session to validate the answer\n\t\t\t\t$_SESSION&#91;&#039;check_math&#039;] = $big+$small;\n\t\t\t\t$form .= &#039;\n\t\t\t&lt;div class=&quot;form-label&quot;&gt;&lt;label for=&quot;ec_math_a&quot;&gt;&#039; . __( &quot;What is the sum of $big and $small?&quot;, &quot;easy_contact&quot; ) . &#039; &#039; . $required . &#039;&lt;\/label&gt;&lt;\/div&gt;\n\t\t\t&lt;div class=&quot;form-input&quot;&gt;&#039; . $ec_form_fields&#91;&#039;math_a&#039;] . &#039;&lt;\/div&gt;&#039;;\n\t\t\t}\n\t\t}\n\t\t\/\/ If the user can CC themselves, give them a box to tick\n\t\tif ( get_option(&#039;ec_option_cc&#039;) == true ) {\n\t\t\t$form .= &#039;\n\t\t\t&lt;div class=&quot;form-option&quot;&gt;&#039; . $ec_form_fields&#91;&#039;option_cc&#039;] . &#039; &lt;label for=&quot;ec_option_cc&quot;&gt;&#039; . apply_filters( &#039;easy_contact_text&#039;, stripslashes(wp_filter_post_kses(get_option(&#039;ec_label_cc&#039;))) ) . &#039;&lt;\/label&gt;&lt;\/div&gt;&#039;;\n\t\t}\n\t\t\/\/ Let&#039;s finish up with this form.\n\t\t$form .= &#039;\n\t\t\t&lt;div class=&quot;form-submit&quot;&gt;\n\t\t\t\t&lt;input type=&quot;submit&quot; name=&quot;submit&quot; class=&quot;button&quot; value=&quot;&#039; . attribute_escape(get_option(&#039;ec_text_submit&#039;)) . &#039;&quot; \/&gt;\n\t\t\t\t&lt;input type=&quot;hidden&quot; name=&quot;ec_stage&quot; value=&quot;process&quot; \/&gt;\n\t\t\t\t&lt;input type=&quot;hidden&quot; name=&quot;ec_referer&quot; value=&quot;&#039; . wp_specialchars( $_SERVER&#91;&#039;HTTP_REFERER&#039;], 1 ) . &#039;&quot; \/&gt;\n\t\t\t\t&lt;input type=&quot;hidden&quot; name=&quot;ec_orig_referer&quot; value=&quot;&#039; . wp_specialchars( $_SESSION&#91;&#039;orig_referer&#039;], 1 ) . &#039;&quot; \/&gt;\n\t\t\t&lt;\/div&gt;\n\t\t&lt;\/fieldset&gt;\n\t&lt;\/form&gt;\n&lt;\/div&gt;&#039;;\n\t\t\/\/ The output is the form.\n\t\t$output = $form;\n\t\t\/\/ So output it.\n\t\treturn $output;\n\t}\n}\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>Code file location<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">easy-contact\/easy-contact\/econtact.php<\/code><\/pre>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Now that you&#8217;ve learned how to embed the <strong>Easy Contact Plugin shortcode<\/strong>, understood the parameters, and seen code examples, it&#8217;s easy to use and debug any issue that might cause it to &#8216;not work&#8217;. If you still have difficulties with it, don&#8217;t hesitate to leave a comment below.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Below, you&#8217;ll find a detailed guide on how to add the Easy Contact Shortcode to your WordPress website, including its parameters, examples, and PHP function code. Additionally, we&#8217;ll assist you with common issues that might cause the Easy Contact Plugin shortcode not to show or not to work correctly. Before starting, here is an overview [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"name":"Easy Contact","slug":"","version":"0.1.2 &beta;","author":"<a href=\"http:\/\/scottwallick.com\/\">Scott Allan Wallick<\/a>","icons":"","plugin_tags":"{\"contact\":\"contact\",\"contact-form\":\"contact form\",\"email\":\"email\",\"form\":\"form\",\"shortcode\":\"shortcode\"}","author_profile":"https:\/\/profiles.wordpress.org\/scottwallick\/","requires":"2.5","tested":"2.6.1","requires_php":"false","rating":86,"num_ratings":3,"active_installs":2000,"downloaded":163249,"last_updated":"2012-11-29 6:30pm GMT","added":"2008-07-31","homepage":"http:\/\/www.plaintxt.org\/experiments\/easy-contact\/","short_description":"Easy Contact is a simple, highly extensible XHTML contact form featuring spam-reduction measures, GUI customization, and shortcode-based insertion.","description":"\"Easy Contact is a user-friendly WordPress plugin that simplifies communication by adding an efficient contact form to your website. It's ideal for enhancing user interaction and engagement.\"","shortcodes":"[\"easy-contact\"]","footnotes":""},"categories":[1],"tags":[],"class_list":["post-2263","post","type-post","status-publish","format-standard","hentry","category-plugins"],"_links":{"self":[{"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/posts\/2263","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/comments?post=2263"}],"version-history":[{"count":1,"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/posts\/2263\/revisions"}],"predecessor-version":[{"id":2785,"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/posts\/2263\/revisions\/2785"}],"wp:attachment":[{"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/media?parent=2263"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/categories?post=2263"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpshortcode.org\/wp-json\/wp\/v2\/tags?post=2263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}