{"id":21705,"date":"2024-09-13T05:52:40","date_gmt":"2024-09-13T09:52:40","guid":{"rendered":"https:\/\/dinorank.com\/en-us\/blog-seo\/?p=21705"},"modified":"2025-06-05T05:22:38","modified_gmt":"2025-06-05T09:22:38","slug":"how-to-set-up-xml-sitemaps","status":"publish","type":"post","link":"https:\/\/dinorank.com\/en-us\/blog-seo\/how-to-set-up-xml-sitemaps\/","title":{"rendered":"How to set up Google XML Sitemaps"},"content":{"rendered":"\n<p>Are you starting in SEO and want to learn how to <strong>get your web pages to show up in search results<\/strong>?<\/p>\n\n\n\n<p>You should know that a key part of this process is having a well-configured sitemap. This way, Google&#8217;s robot will know <strong>which URLs on your website it should show to users<\/strong>.<\/p>\n\n\n\n<p>Setting up and submitting a sitemap might seem like a daunting task at first.<\/p>\n\n\n\n<p>However, in this article, I&#8217;ll show you that <strong>it&#8217;s easier than you think<\/strong> thanks to <strong>plugins that help configure it<\/strong> without the need for technical and programming knowledge; the first step will be knowing which options to activate.<\/p>\n\n\n\n<p>Therefore, in this article, you will learn how to configure a sitemap step by step like a true professional.<\/p>\n\n\n\n<p>But first, I&#8217;ll start by defining this SEO concept in more detail:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What is an XML Sitemap and what is it for?<\/h2>\n\n\n\n<p>An XML Sitemap is a <strong>file that lists the URLs of your website<\/strong> that you want search engines to index and <strong>show to users<\/strong>.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-share\" style=\"color:#00937D\"><\/i> If a URL is not in the sitemap, <strong>it is harder for Google to show it<\/strong> to users in search results.<\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>This XML file <strong>contains a series of data about each page<\/strong>, such as the modification date or the number of images each one contains.<\/p>\n\n\n\n<p>Additionally, <strong>a sitemap is usually organized into several site maps<\/strong>, based on the <strong>structure of your website<\/strong>. This helps Google better understand the architecture of your domain, resulting in better positioning.<\/p>\n\n\n\n<p>A common way to present a sitemap is as follows:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"222\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/tutorial-on-configuring-Google-sitemaps-1-1024x222.png\" alt=\"tutorial on configuring Google sitemaps\" class=\"wp-image-21722\" title=\"Example of what an XML Sitemap is\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/tutorial-on-configuring-Google-sitemaps-1-1024x222.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/tutorial-on-configuring-Google-sitemaps-1-300x65.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/tutorial-on-configuring-Google-sitemaps-1-768x166.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/tutorial-on-configuring-Google-sitemaps-1-1536x333.png 1536w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/tutorial-on-configuring-Google-sitemaps-1.png 1919w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p>XML is not the only type of sitemap that exists. Some websites show their users a sitemap in <strong>HTML<\/strong> format.<\/p>\n\n\n\n<p>Below, you can see the differences between the two:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Differences Between an XML Sitemap and an HTML Sitemap<\/h3>\n\n\n<div class=\"su-box su-box-style-default\" id=\"\" style=\"border-color:#00604a;border-radius:7px;max-width:none\"><div class=\"su-box-title\" style=\"background-color:#00937D;color:#ffffff;border-top-left-radius:5px;border-top-right-radius:5px\">Differences between sitemap.xml and sitemap.html<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:5px;border-bottom-right-radius:5px\">\n<p>While <strong>XML is aimed at helping search engines understand the structure of the website<\/strong> and the URLs they can show, <strong>HTML is a page created with the goal of guiding the user<\/strong> through your website.<\/p>\n<\/div><\/div>\n\n\n\n<p>The HTML sitemap itself is usually not very useful for search engines.<\/p>\n\n\n\n<p>To better understand the difference between the two, here is an example of an HTML sitemap:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/06\/diferencias-sitemap.html-y-xml.webp\" alt=\"Differences between an HTML and XML sitemap\" class=\"wp-image-23509\" title=\"Differences between an HTML and XML sitemap\"\/><\/figure><\/div>\n\n\n<p>As you can see, this is an <strong>intuitive and visual page<\/strong>, unlike the sitemap.xml, which does not seek to satisfy the user experience.<\/p>\n\n\n<div class=\"su-box su-box-style-default\" id=\"\" style=\"border-color:#00604a;border-radius:3px;max-width:none\"><div class=\"su-box-title\" style=\"background-color:#00937d;color:#FFFFFF;border-top-left-radius:1px;border-top-right-radius:1px\">Sitemap.xml<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:1px;border-bottom-right-radius:1px\">\n<ul>\n<li>For search engines.<\/li>\n<li>XML format (tags like <strong>&lt;urlset&gt;<\/strong>, etc.).<\/li>\n<li>Not directly visible to users.<\/li>\n<li>Directly improves SEO crawling.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n<div class=\"su-box su-box-style-default\" id=\"\" style=\"border-color:#000000;border-radius:3px;max-width:none\"><div class=\"su-box-title\" style=\"background-color:#002132;color:#FFFFFF;border-top-left-radius:1px;border-top-right-radius:1px\">Sitemap.html<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:1px;border-bottom-right-radius:1px\">\n<ul>\n<li>For users.<\/li>\n<li>HTML format (web page with links).<\/li>\n<li>Visible and navigable by users.<\/li>\n<li>Indirectly improves SEO.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<p>The main advantage of the XML format is that it <strong>offers a series of positive SEO points<\/strong>, which I detail below:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What Are the SEO Benefits of Configuring a Sitemap<\/h2>\n\n\n\n<p>The main<strong> benefits of properly configuring the sitemap<\/strong> are:<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check\" style=\"color:#00937D\"><\/i> Search robots <strong>go directly to the URLs you want to show them<\/strong>, thus avoiding analyzing unnecessary pages one by one.<\/li>\n<li><i class=\"sui sui-check\" style=\"color:#00937D\"><\/i> Search engines will know the <strong>frequency with which you update your website<\/strong> and will record the changes.<\/li>\n<li><i class=\"sui sui-check\" style=\"color:#00937D\"><\/i> The XML sitemap <strong>will indicate to crawlers which URLs are the most important on your site<\/strong> so they index what you want.<\/li>\n<li><i class=\"sui sui-check\" style=\"color:#00937D\"><\/i> It does not affect the usability of your website at all, as it is oriented towards search engines and not the user.<\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>To achieve all these benefits, your website\u2019s sitemap must be well configured. Below is a tutorial to adjust your website&#8217;s sitemap like a PRO.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"como-configurar-sitemap\">How to Configure an XML Sitemap Step by Step<\/h2>\n\n\n\n<p>When it comes to configuring an XML sitemap, you might imagine it as a complex and impossible task for someone without advanced technical SEO knowledge.<\/p>\n\n\n\n<p>But the reality is that, if your website is on WordPress, you only need to follow these steps to have a fully functional XML sitemap:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Download the &#8216;XML Sitemap Generator for Google&#8217; Plugin<\/h3>\n\n\n\n<p>There are many WordPress plugins that help you generate a functional sitemap. In this case, I will use <a href=\"https:\/\/wordpress.org\/plugins\/google-sitemap-generator\/\" target=\"_blank\" rel=\"noreferrer noopener\">XML Sitemap Generator for Google<\/a>, one of the most installed and highly rated for site map management.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1024\" height=\"891\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Download-a-plugin-to-generate-Sitemaps-1024x891.png\" alt=\"Download a plugin to generate Sitemaps\" class=\"wp-image-21724\" title=\"Download a plugin to generate Sitemaps\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Download-a-plugin-to-generate-Sitemaps-1024x891.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Download-a-plugin-to-generate-Sitemaps-300x261.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Download-a-plugin-to-generate-Sitemaps-768x669.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Download-a-plugin-to-generate-Sitemaps.png 1050w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p>You will need to install and activate it to use it. There are also other plugins that are very good for generating sitemaps, such as Yoast SEO or Rank Math.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2: Basic XML Sitemap Configuration<\/h3>\n\n\n\n<p>To access the configuration of this plugin, hover over the settings tab and click on <strong>XML Sitemap<\/strong>.<\/p>\n\n\n\n<p>Here you will find the &#8220;Basic Options,&#8221; where you will see that all the boxes are checked by default:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"681\" height=\"169\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Basic-Configuration-of-the-Google-XML-sitemaps-plugin.png\" alt=\"Basic Configuration of the Google XML sitemaps plugin\" class=\"wp-image-21726\" title=\"Basic Configuration of the Google XML sitemaps plugin\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Basic-Configuration-of-the-Google-XML-sitemaps-plugin.png 681w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Basic-Configuration-of-the-Google-XML-sitemaps-plugin-300x74.png 300w\" sizes=\"(max-width: 681px) 100vw, 681px\" \/><\/figure><\/div>\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Use the IndexNow protocol to notify search engines like Microsoft Bing, Seznam.cz, Naver, and Yandex about updates to your site:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>This option allows your site to <strong>automatically notify these search engines when there are updates to your content<\/strong>, which can speed up the indexing process.<\/p>\n\n\n\n<p>I recommend enabling this, except if you constantly make non-final changes that you don&#8217;t want search engines to see until you specify.<\/p>\n\n\n\n<p>In the &#8220;Sitemap Content&#8221; section, you can select which elements you want to include in your XML sitemap.<\/p>\n\n\n\n<p><strong>It is recommended to set it up just like in the image<\/strong>, to avoid overloading the sitemap with too much information.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Add the sitemap URL to the virtual robots.txt file:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>By enabling this option, the sitemap URL will be automatically added to WordPress&#8217;s robots.txt file.<\/p>\n\n\n\n<p>Keep in mind that <strong>search engines also use the robots.txt to find the sitemap<\/strong> via the <em>Sitemap Autodiscovery<\/em> system, so this option helps search engines find your sitemap more effectively.<\/p>\n\n\n\n<p>If you already manage your website&#8217;s robots.txt manually, you don&#8217;t need to check this option.<\/p>\n\n\n\n<div id=\"brxe-dac047\" class=\"brxe-block p-2 gap-15\"><div id=\"brxe-481bc6\" class=\"brxe-text-basic h3\">Another SEO newsletter?\n\nYes.\n<\/div><div id=\"brxe-b11ebb\" class=\"brxe-text-basic\">This is what we can offer you:<\/div><div id=\"brxe-97bf62\" class=\"brxe-text-basic\"><strong>No fluff, no hype. 100% honesty. 100% straight to the point<\/strong>. All we need is your email and a bit of your attention\u2014we\u2019ll handle the rest.\n\nIt\u2019s your call.\n<\/div><div id=\"brxe-omkwmy\" data-script-id=\"omkwmy\" class=\"brxe-code\"><style>@import url(https:\/\/fonts.bunny.net\/css?family=source-sans-pro:400,700);<\/style>\n<style>\n#_form_311_{font-size:14px;line-height:1.6;font-family:arial, helvetica, sans-serif;margin:0}#_form_311_ *{outline:0}._form_hide{display:none;visibility:hidden}._form_show{display:block;visibility:visible}#_form_311_._form-top{top:0}#_form_311_._form-bottom{bottom:0}#_form_311_._form-left{left:0}#_form_311_._form-right{right:0}#_form_311_ input[type=\"text\"],#_form_311_ input[type=\"tel\"],#_form_311_ input[type=\"date\"],#_form_311_ textarea{padding:6px;height:auto;border:#979797 1px solid;border-radius:4px;color:#000 !important;font-size:14px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#_form_311_ textarea{resize:none}#_form_311_ ._submit{-webkit-appearance:none;cursor:pointer;font-family:arial, sans-serif;font-size:14px;text-align:center;background:#00C4A7 !important;border:0 !important;-moz-border-radius:3px !important;-webkit-border-radius:3px !important;border-radius:3px !important;color:#FFFFFF !important;padding:14px !important}#_form_311_ ._submit:disabled{cursor:not-allowed;opacity:0.4}#_form_311_ ._submit.processing{position:relative}#_form_311_ ._submit.processing::before{content:\"\";width:1em;height:1em;position:absolute;z-index:1;top:50%;left:50%;border:double 3px transparent;border-radius:50%;background-image:linear-gradient(#00C4A7, #00C4A7), conic-gradient(#00C4A7, #FFFFFF);background-origin:border-box;background-clip:content-box, border-box;animation:1200ms ease 0s infinite normal none running _spin}#_form_311_ ._submit.processing::after{content:\"\";position:absolute;top:0;bottom:0;left:0;right:0;background:#00C4A7 !important;border:0 !important;-moz-border-radius:3px !important;-webkit-border-radius:3px !important;border-radius:3px !important;color:#FFFFFF !important;padding:14px !important}@keyframes _spin{0%{transform:translate(-50%, -50%) rotate(90deg)}100%{transform:translate(-50%, -50%) rotate(450deg)}}#_form_311_ ._close-icon{cursor:pointer;background-image:url(\"https:\/\/d226aj4ao1t61q.cloudfront.net\/esfkyjh1u_forms-close-dark.png\");background-repeat:no-repeat;background-size:14.2px 14.2px;position:absolute;display:block;top:11px;right:9px;overflow:hidden;width:16.2px;height:16.2px}#_form_311_ ._close-icon:before{position:relative}#_form_311_ ._form-body{margin-bottom:30px}#_form_311_ ._form-image-left{width:150px;float:left}#_form_311_ ._form-content-right{margin-left:164px}#_form_311_ ._form-branding{color:#fff;font-size:10px;clear:both;text-align:left;margin-top:30px;font-weight:100}#_form_311_ ._form-branding ._logo{display:block;width:130px;height:14px;margin-top:6px;background-image:url(\"https:\/\/d226aj4ao1t61q.cloudfront.net\/hh9ujqgv5_aclogo_li.png\");background-size:130px auto;background-repeat:no-repeat}#_form_311_ .form-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}#_form_311_ ._form-label,#_form_311_ ._form_element ._form-label{font-weight:bold;margin-bottom:5px;display:block}#_form_311_._dark ._form-branding{color:#333}#_form_311_._dark ._form-branding ._logo{background-image:url(\"https:\/\/d226aj4ao1t61q.cloudfront.net\/jftq2c8s_aclogo_dk.png\")}#_form_311_ ._form_element{position:relative;margin-bottom:10px;font-size:0;max-width:100%}#_form_311_ ._form_element *{font-size:14px}#_form_311_ ._form_element._clear{clear:both;width:100%;float:none}#_form_311_ ._form_element._clear:after{clear:left}#_form_311_ ._form_element input[type=\"text\"],#_form_311_ ._form_element input[type=\"date\"],#_form_311_ ._form_element select,#_form_311_ ._form_element textarea:not(.g-recaptcha-response){display:block;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-family:inherit}#_form_311_ ._field-wrapper{position:relative}#_form_311_ ._inline-style{float:left}#_form_311_ ._inline-style input[type=\"text\"]{width:150px}#_form_311_ ._inline-style:not(._clear){margin-right:20px}#_form_311_ ._form_element img._form-image{max-width:100%}#_form_311_ ._form_element ._form-fieldset{border:0;padding:0.01em 0 0 0;margin:0;min-width:0}#_form_311_ ._clear-element{clear:left}#_form_311_ ._full_width{width:100%}#_form_311_ ._form_full_field{display:block;width:100%;margin-bottom:10px}#_form_311_ input[type=\"text\"]._has_error,#_form_311_ textarea._has_error{border:#F37C7B 1px solid}#_form_311_ input[type=\"checkbox\"]._has_error{outline:#F37C7B 1px solid}#_form_311_ ._show_be_error{float:left}#_form_311_ ._error{display:block;position:absolute;font-size:14px;z-index:10000001}#_form_311_ ._error._above{padding-bottom:4px;bottom:39px;right:0}#_form_311_ ._error._below{padding-top:8px;top:100%;right:0}#_form_311_ ._error._above ._error-arrow{bottom:-4px;right:15px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #FFDDDD}#_form_311_ ._error._below ._error-arrow{top:0;right:15px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid #FFDDDD}#_form_311_ ._error-inner{padding:12px 12px 12px 36px;background-color:#FFDDDD;background-image:url(\"data:image\/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16 8C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8C0 3.58172 3.58172 0 8 0C12.4183 0 16 3.58172 16 8ZM9 3V9H7V3H9ZM9 13V11H7V13H9Z' fill='%23CA0000'\/%3E%3C\/svg%3E\");background-repeat:no-repeat;background-position:12px center;font-size:14px;font-family:arial, sans-serif;font-weight:600;line-height:16px;color:#000;text-align:center;text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;box-shadow:0 1px 4px rgba(31, 33, 41, 0.298295)}@media only screen and (max-width:319px){#_form_311_ ._error-inner{padding:7px 7px 7px 25px;font-size:12px;line-height:12px;background-position:4px center;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}#_form_311_ ._error-inner._form_error{margin-bottom:5px;text-align:left}#_form_311_ ._button-wrapper ._error-inner._form_error{position:static}#_form_311_ ._error-inner._no_arrow{margin-bottom:10px}#_form_311_ ._error-arrow{position:absolute;width:0;height:0}#_form_311_ ._error-html{margin-bottom:10px}.pika-single{z-index:10000001 !important}#_form_311_ input[type=\"text\"].datetime_date{width:69%;display:inline}#_form_311_ select.datetime_time{width:29%;display:inline;height:32px}#_form_311_ input[type=\"date\"].datetime_date{width:69%;display:inline-flex}#_form_311_ input[type=\"time\"].datetime_time{width:29%;display:inline-flex}@media (min-width:320px) and (max-width:667px){::-webkit-scrollbar{display:none}#_form_311_{margin:0;width:100%;min-width:100%;max-width:100%;box-sizing:border-box}#_form_311_ *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-size:1em}#_form_311_ ._form-content{margin:0;width:100%}#_form_311_ ._form-inner{display:block;min-width:100%}#_form_311_ ._form-title,#_form_311_ ._inline-style{margin-top:0;margin-right:0;margin-left:0}#_form_311_ ._form-title{font-size:1.2em}#_form_311_ ._form_element{margin:0 0 20px;padding:0;width:100%}#_form_311_ ._form-element,#_form_311_ ._inline-style,#_form_311_ input[type=\"text\"],#_form_311_ label,#_form_311_ p,#_form_311_ textarea:not(.g-recaptcha-response){float:none;display:block;width:100%}#_form_311_ ._row._checkbox-radio label{display:inline}#_form_311_ ._row,#_form_311_ p,#_form_311_ label{margin-bottom:0.7em;width:100%}#_form_311_ ._row input[type=\"checkbox\"],#_form_311_ ._row input[type=\"radio\"]{margin:0 !important;vertical-align:middle !important}#_form_311_ ._row input[type=\"checkbox\"]+span label{display:inline}#_form_311_ ._row span label{margin:0 !important;width:initial !important;vertical-align:middle !important}#_form_311_ ._form-image{max-width:100%;height:auto !important}#_form_311_ input[type=\"text\"]{padding-left:10px;padding-right:10px;font-size:16px;line-height:1.3em;-webkit-appearance:none}#_form_311_ input[type=\"radio\"],#_form_311_ input[type=\"checkbox\"]{display:inline-block;width:1.3em;height:1.3em;font-size:1em;margin:0 0.3em 0 0;vertical-align:baseline}#_form_311_ button[type=\"submit\"]{padding:20px;font-size:1.5em}#_form_311_ ._inline-style{margin:20px 0 0 !important}#_form_311_ ._inline-style input[type=\"text\"]{width:100%}}#_form_311_ .sms_consent_checkbox{position:relative;width:100%;display:flex;align-items:flex-start;padding:20px 0}#_form_311_ .sms_consent_checkbox input[type=\"checkbox\"]{float:left;margin:5px 10px 10px 0}#_form_311_ .sms_consent_checkbox .sms_consent_message{display:inline;float:left;text-align:left;margin-bottom:10px;font-size:14px;color:#7D8799}#_form_311_ .sms_consent_checkbox .sms_consent_message.sms_consent_mini{width:90%}#_form_311_ .sms_consent_checkbox ._error._above{right:auto;bottom:0}#_form_311_ .sms_consent_checkbox ._error._above ._error-arrow{right:auto;left:5px}@media (min-width:320px) and (max-width:667px){#_form_311_ .sms_consent_checkbox ._error._above{top:-30px;left:0;bottom:auto}}#_form_311_ .field-required{color:#FF0000}#_form_311_{position:relative;text-align:left;margin:25px auto 0;padding:20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255, 255, 255, 0) !important;border-top:0px solid #737373 !important;border-right:0px solid #737373 !important;border-bottom:0px solid #737373 !important;border-left:0px solid #737373 !important;max-width:800px;-moz-border-radius:1px !important;-webkit-border-radius:1px !important;border-radius:1px !important;color:#000000}#_form_311_ ._show_be_error{min-width:100%}#_form_311_._inline-form,#_form_311_._inline-form ._form-content{font-family:Source Sans Pro;font-size:14px;font-weight:400}#_form_311_._inline-form ._row span,#_form_311_._inline-form ._row label{font-family:Source Sans Pro;font-size:14px;font-weight:400;line-height:1.6em;color:#888 !important}#_form_311__inlineform input[type=\"text\"],#_form_311__inlineform input[type=\"date\"],#_form_311__inlineform input[type=\"tel\"],#_form_311__inlineform select,#_form_311__inlineform textarea:not(.g-recaptcha-response){font-family:Source Sans Pro;font-size:14px;font-weight:400;font-color:#000000;line-height:1.6em}#_form_311_._inline-form ._html-code *:not(h1, h2, h3, h4, h5, h6),#_form_311_._inline-form .sms_consent_message,#_form_311_._inline-form ._form-thank-you{font-family:Source Sans Pro;font-size:14px;font-weight:400;color:#888 !important}#_form_311_._inline-form ._form-label,#_form_311_._inline-form ._form-emailidentifier,#_form_311_._inline-form ._form-checkbox-option-label{font-family:Source Sans Pro;font-size:14px;font-weight:700;line-height:1.6em;color:#888 !important}#_form_311_._inline-form ._submit{margin-top:12px;font-family:Source Sans Pro;font-size:14px;font-weight:400}#_form_311_._inline-form ._html-code h1,#_form_311_._inline-form ._html-code h2,#_form_311_._inline-form ._html-code h3,#_form_311_._inline-form ._html-code h4,#_form_311_._inline-form ._html-code h5,#_form_311_._inline-form ._html-code h6,#_form_311_._inline-form ._form-title{font-family:Source Sans Pro;font-size:22px;line-height:normal;font-weight:700;color:black;margin-bottom:0;display:block}#_form_311_._inline-form ._form-branding{font-family:\"IBM Plex Sans\", Helvetica, sans-serif;font-size:13px;font-weight:100;font-style:normal;text-decoration:none}#_form_311_:before,#_form_311_:after{content:\" \";display:table}#_form_311_:after{clear:both}#_form_311_._inline-style{width:auto;display:inline-block}#_form_311_._inline-style input[type=\"text\"],#_form_311_._inline-style input[type=\"date\"]{padding:10px 12px}#_form_311_._inline-style button._inline-style{position:relative;top:27px}#_form_311_._inline-style p{margin:0}#_form_311_._inline-style ._button-wrapper{position:relative;margin:16px 12.5px 0 20px}#_form_311_ ._form-thank-you{position:relative;left:0;right:0;text-align:center;font-size:18px}#_form_311_ ._form-pc-confirmation ._submit{margin-top:16px}@media (min-width:320px) and (max-width:667px){#_form_311_._inline-form._inline-style ._inline-style._button-wrapper{margin-top:20px !important;margin-left:0 !important}}#_form_311_ .iti{width:100%}#_form_311_ .iti.iti--allow-dropdown.iti--separate-dial-code{width:100%}#_form_311_ .iti input{width:100%;border:#979797 1px solid;border-radius:4px}#_form_311_ .iti--separate-dial-code .iti__selected-flag{background-color:#FFFFFF;border-radius:4px}#_form_311_ .iti--separate-dial-code .iti__selected-flag:hover{background-color:rgba(0, 0, 0, 0.05)}#_form_311_ .iti__country-list{border-radius:4px;margin-top:4px;min-width:460px}#_form_311_ .iti__country-list--dropup{margin-bottom:4px}#_form_311_ .phone-error-hidden{display:none}#_form_311_ .phone-error{color:#E40E49}#_form_311_ .phone-input-error{border:1px solid #E40E49 !important}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field fieldset{margin:0;margin-bottom:1.1428571429em;border:none;padding:0}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field fieldset:last-child{margin-bottom:0}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field legend{margin-bottom:1.1428571429em}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field label{display:flex;align-items:flex-start;justify-content:flex-start;margin-bottom:0.8571428571em}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field label:last-child{margin-bottom:0}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field input{margin:0;margin-right:8px}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-label{display:block;font-weight:400;margin-top:-4px}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-label-with-description{display:block;font-weight:700;margin-top:-4px}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-description{margin:0;font-size:0.8571428571em}#_form_311_._inline-form ._form-content ._form-list-subscriptions-field ._form-subscriptions-unsubscribe-all-description{line-height:normal;margin-top:-2px}\n#_form_311_ ._submit{width:100%;font-family:\"Source Sans Pro\", Sans-serif !important;font-size:18px !important;font-weight:500 !important}#_form_311_ ._submit:hover{background-color:#04937E !important}#_form_311_ input#email{padding:3px 12px;background-color:#ffffff;border-radius:2px}#_form_311_._form{margin-top:-5px}#_form_311_ ._error._below{position:relative !important}#_form_311_ ._error._above{position:absolute !important}@media (min-width:320px) and (max-width:667px){#_form_311_ ._form_element{margin:0 0 0px}}<\/style>\n<form method=\"POST\" action=\"https:\/\/deandelafuenteromero.activehosted.com\/proc.php\" id=\"_form_311_\" class=\"_form _form_311 _inline-form  _dark\" novalidate data-styles-version=\"5\">\n  <input type=\"hidden\" name=\"u\" value=\"311\" \/>\n  <input type=\"hidden\" name=\"f\" value=\"311\" \/>\n  <input type=\"hidden\" name=\"s\" \/>\n  <input type=\"hidden\" name=\"c\" value=\"0\" \/>\n  <input type=\"hidden\" name=\"m\" value=\"0\" \/>\n  <input type=\"hidden\" name=\"act\" value=\"sub\" \/>\n  <input type=\"hidden\" name=\"v\" value=\"2\" \/>\n  <input type=\"hidden\" name=\"or\" value=\"1d0d99d99ed2973ea9179629b793b9aa\" \/>\n  <div class=\"_form-content\">\n    <div class=\"_form_element _x74577619 _full_width \" >\n      <label for=\"email\" class=\"_form-label\">\n      <\/label>\n      <div class=\"_field-wrapper\">\n        <input type=\"text\" id=\"email\" name=\"email\" placeholder=\"Enter your email\" required\/>\n      <\/div>\n    <\/div>\n    <div class=\"_form_element _x06467309 _full_width \" >\n      <fieldset class=\"_form-fieldset\">\n        <div class=\"_row\">\n          <legend for=\"field[136][]\" class=\"_form-label\">\n          <\/legend>\n        <\/div>\n        <input data-autofill=\"false\" type=\"hidden\" id=\"field[136][]\" name=\"field[136][]\" value=\"~|\">\n        <div class=\"_row _checkbox-radio\">\n          <input id=\"field_136I have read and accept the privacy policy\" type=\"checkbox\" name=\"field[136][]\"\n          value=\"I have read and accept the privacy policy\"                                                                                 required                                >\n          <span>\n            <label for=\"field_136I have read and accept the privacy policy\">\n              I have read and accept the privacy policy<span class=\"field-required\">\n              *\n            <\/span>\n          <\/label>\n        <\/span>\n      <\/div>\n    <\/fieldset>\n  <\/div>\n  <div class=\"_form_element _x77210210 _full_width \" >\n    <label for=\"ls\" class=\"_form-label\">\n      Verify that you are human<span class=\"field-required\">\n      *\n    <\/span>\n  <\/label>\n  <div class=\"g-recaptcha\" data-sitekey=\"6LcwIw8TAAAAACP1ysM08EhCgzd6q5JAOUR1a0Go\">\n  <\/div>\n<\/div>\n<div class=\"_form_element _x09639014 _full_width \" >\n  <input type=\"hidden\" name=\"field[121]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x64811239 _full_width \" >\n  <input type=\"hidden\" name=\"field[122]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x58860354 _full_width \" >\n  <input type=\"hidden\" name=\"field[123]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x23331849 _full_width \" >\n  <input type=\"hidden\" name=\"field[125]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x72046679 _full_width \" >\n  <input type=\"hidden\" name=\"field[126]\" value=\"\" \/>\n<\/div>\n<div class=\"_form_element _x41336277 _full_width \" >\n  <input type=\"hidden\" name=\"field[127]\" value=\"\" \/>\n<\/div>\n<div class=\"_button-wrapper _full_width\">\n  <button id=\"_form_311_submit\" class=\"_submit\" type=\"submit\">\n    Subscribe here\n  <\/button>\n<\/div>\n<div class=\"_clear-element\">\n<\/div>\n<\/div>\n<div class=\"_form-thank-you\" style=\"display:none;\">\n<\/div>\n<\/form><script>\nwindow.cfields = {\"136\":\"i_have_read_and_accept_the_privacy_policy\",\"121\":\"utm_campaign\",\"122\":\"utm_source\",\"123\":\"utm_medium\",\"125\":\"utm_content\",\"126\":\"utm_adset\",\"127\":\"utm_ad\"};\nwindow._show_thank_you = function(id, message, trackcmp_url, email) {\n    var form = document.getElementById('_form_' + id + '_'), thank_you = form.querySelector('._form-thank-you');\n    form.querySelector('._form-content').style.display = 'none';\n    thank_you.innerHTML = message;\n    thank_you.style.display = 'block';\n    const vgoAlias = typeof visitorGlobalObjectAlias === 'undefined' ? 'vgo' : visitorGlobalObjectAlias;\n    var visitorObject = window[vgoAlias];\n    if (email && typeof visitorObject !== 'undefined') {\n        visitorObject('setEmail', email);\n        visitorObject('update');\n    } else if (typeof(trackcmp_url) != 'undefined' && trackcmp_url) {\n        \/\/ Site tracking URL to use after inline form submission.\n        _load_script(trackcmp_url);\n    }\n    if (typeof window._form_callback !== 'undefined') window._form_callback(id);\n};\nwindow._show_unsubscribe = function(id, message, trackcmp_url, email) {\n    var form = document.getElementById('_form_' + id + '_'), unsub = form.querySelector('._form-thank-you');\n    var branding = form.querySelector('._form-branding');\n    if (branding) {\n        branding.style.display = 'none';\n    }\n    form.querySelector('._form-content').style.display = 'none';\n    unsub.style.display = 'block';\n    form.insertAdjacentHTML('afterend', message)\n    const vgoAlias = typeof visitorGlobalObjectAlias === 'undefined' ? 'vgo' : visitorGlobalObjectAlias;\n    var visitorObject = window[vgoAlias];\n    if (email && typeof visitorObject !== 'undefined') {\n        visitorObject('setEmail', email);\n        visitorObject('update');\n    } else if (typeof(trackcmp_url) != 'undefined' && trackcmp_url) {\n        \/\/ Site tracking URL to use after inline form submission.\n        _load_script(trackcmp_url);\n    }\n    if (typeof window._form_callback !== 'undefined') window._form_callback(id);\n};\nwindow._show_error = function(id, message, html) {\n    var form = document.getElementById('_form_' + id + '_'),\n        err = document.createElement('div'),\n        button = form.querySelector('button[type=\"submit\"]'),\n        old_error = form.querySelector('._form_error');\n    if (old_error) old_error.parentNode.removeChild(old_error);\n    err.innerHTML = message;\n    err.className = '_error-inner _form_error _no_arrow';\n    var wrapper = document.createElement('div');\n    wrapper.className = '_form-inner _show_be_error';\n    wrapper.appendChild(err);\n    button.parentNode.insertBefore(wrapper, button);\n    var submitButton = form.querySelector('[id^=\"_form\"][id$=\"_submit\"]');\n    submitButton.disabled = false;\n    submitButton.classList.remove('processing');\n    if (html) {\n        var div = document.createElement('div');\n        div.className = '_error-html';\n        div.innerHTML = html;\n        err.appendChild(div);\n    }\n};\nwindow._show_pc_confirmation = function(id, header, detail, show, email) {\n    var form = document.getElementById('_form_' + id + '_'), pc_confirmation = form.querySelector('._form-pc-confirmation');\n    if (pc_confirmation.style.display === 'none') {\n        form.querySelector('._form-content').style.display = 'none';\n        pc_confirmation.innerHTML = \"<div class='_form-title'>\" + header + \"<\/div>\" + \"<p>\" + detail + \"<\/p>\" +\n        \"<button class='_submit' id='hideButton'>Administrar preferencias<\/button>\";\n        pc_confirmation.style.display = 'block';\n        var mp = document.querySelector('input[name=\"mp\"]');\n        mp.value = '0';\n    } else {\n        form.querySelector('._form-content').style.display = 'inline';\n        pc_confirmation.style.display = 'none';\n    }\n\n    var hideButton = document.getElementById('hideButton');\n    \/\/ Add event listener to the button\n    hideButton.addEventListener('click', function() {\n        var submitButton = document.querySelector('#_form_311_submit');\n        submitButton.disabled = false;\n        submitButton.classList.remove('processing');\n        var mp = document.querySelector('input[name=\"mp\"]');\n        mp.value = '1';\n        const cacheBuster = new URL(window.location.href);\n        cacheBuster.searchParams.set('v', new Date().getTime());\n        window.location.href = cacheBuster.toString();\n    });\n\n    const vgoAlias = typeof visitorGlobalObjectAlias === 'undefined' ? 'vgo' : visitorGlobalObjectAlias;\n    var visitorObject = window[vgoAlias];\n    if (email && typeof visitorObject !== 'undefined') {\n        visitorObject('setEmail', email);\n        visitorObject('update');\n    } else if (typeof(trackcmp_url) != 'undefined' && trackcmp_url) {\n        \/\/ Site tracking URL to use after inline form submission.\n        _load_script(trackcmp_url);\n    }\n    if (typeof window._form_callback !== 'undefined') window._form_callback(id);\n};\nwindow._load_script = function(url, callback, isSubmit) {\n    var head = document.querySelector('head'), script = document.createElement('script'), r = false;\n    var submitButton = document.querySelector('#_form_311_submit');\n    script.charset = 'utf-8';\n    script.src = url;\n    if (callback) {\n        script.onload = script.onreadystatechange = function() {\n            if (!r && (!this.readyState || this.readyState == 'complete')) {\n                r = true;\n                callback();\n            }\n        };\n    }\n    script.onerror = function() {\n        if (isSubmit) {\n            if (script.src.length > 10000) {\n                _show_error(\"311\", \"Lo sentimos, ocurri\u00f3 un error con el env\u00edo. Acorta tus respuestas y vuelve a intentarlo.\");\n            } else {\n                _show_error(\"311\", \"Lo sentimos, ocurri\u00f3 un error con el env\u00edo. Vuelve a intentarlo.\");\n            }\n            submitButton.disabled = false;\n            submitButton.classList.remove('processing');\n        }\n    }\n\n    head.appendChild(script);\n};\n(function() {\n    var iti;\n    if (window.location.search.search(\"excludeform\") !== -1) return false;\n    var getCookie = function(name) {\n        var match = document.cookie.match(new RegExp('(^|; )' + name + '=([^;]+)'));\n        return match ? match[2] : null;\n    }\n    var setCookie = function(name, value) {\n        var now = new Date();\n        var time = now.getTime();\n        var expireTime = time + 1000 * 60 * 60 * 24 * 365;\n        now.setTime(expireTime);\n        document.cookie = name + '=' + value + '; expires=' + now + ';path=\/; Secure; SameSite=Lax;';\n    }\n    var addEvent = function(element, event, func) {\n        if (element.addEventListener) {\n            element.addEventListener(event, func);\n        } else {\n            var oldFunc = element['on' + event];\n            element['on' + event] = function() {\n                oldFunc.apply(this, arguments);\n                func.apply(this, arguments);\n            };\n        }\n    }\n    var _removed = false;\n        var form_to_submit = document.getElementById('_form_311_');\n    var allInputs = form_to_submit.querySelectorAll('input, select, textarea'), tooltips = [], submitted = false;\n\n    var getUrlParam = function(name) {\n        if (name.toLowerCase() !== 'email') {\n            var params = new URLSearchParams(window.location.search);\n            return params.get(name) || false;\n        }\n        \/\/ email is a special case because a plus is valid in the email address\n        var qString = window.location.search;\n        if (!qString) {\n            return false;\n        }\n        var parameters = qString.substr(1).split('&');\n        for (var i = 0; i < parameters.length; i++) {\n            var parameter = parameters[i].split('=');\n            if (parameter[0].toLowerCase() === 'email') {\n                return parameter[1] === undefined ? true : decodeURIComponent(parameter[1]);\n            }\n        }\n        return false;\n    };\n\n    var acctDateFormat = \"%d\/%m\/%Y\";\n    var getNormalizedDate = function(date, acctFormat) {\n        var decodedDate = decodeURIComponent(date);\n        if (acctFormat && acctFormat.match(\/(%d|%e).*%m\/gi) !== null) {\n            return decodedDate.replace(\/(\\d{2}).*(\\d{2}).*(\\d{4})\/g, '$3-$2-$1');\n        } else if (Date.parse(decodedDate)) {\n            var dateObj = new Date(decodedDate);\n            var year = dateObj.getFullYear();\n            var month = dateObj.getMonth() + 1;\n            var day = dateObj.getDate();\n            return `${year}-${month < 10 ? `0${month}` : month}-${day < 10 ? `0${day}` : day}`;\n        }\n        return false;\n    };\n\n    var getNormalizedTime = function(time) {\n        var hour, minutes;\n        var decodedTime = decodeURIComponent(time);\n        var timeParts = Array.from(decodedTime.matchAll(\/(\\d{1,2}):(\\d{1,2})\\W*([AaPp][Mm])?\/gm))[0];\n        if (timeParts[3]) { \/\/ 12 hour format\n            var isPM = timeParts[3].toLowerCase() === 'pm';\n            if (isPM) {\n                hour = parseInt(timeParts[1]) === 12 ? '12' : `${parseInt(timeParts[1]) + 12}`;\n            } else {\n                hour = parseInt(timeParts[1]) === 12 ? '0' : timeParts[1];\n            }\n        } else { \/\/ 24 hour format\n            hour = timeParts[1];\n        }\n        var normalizedHour = parseInt(hour) < 10 ? `0${parseInt(hour)}` : hour;\n        var minutes = timeParts[2];\n        return `${normalizedHour}:${minutes}`;\n    };\n\n    for (var i = 0; i < allInputs.length; i++) {\n        var regexStr = \"field\\\\[(\\\\d+)\\\\]\";\n        var results = new RegExp(regexStr).exec(allInputs[i].name);\n        if (results != undefined) {\n            allInputs[i].dataset.name = allInputs[i].name.match(\/\\[time\\]$\/)\n                ? `${window.cfields[results[1]]}_time`\n                : window.cfields[results[1]];\n        } else {\n            allInputs[i].dataset.name = allInputs[i].name;\n        }\n        var fieldVal = getUrlParam(allInputs[i].dataset.name);\n\n        if (fieldVal) {\n            if (allInputs[i].dataset.autofill === \"false\") {\n                continue;\n            }\n            if (allInputs[i].type == \"radio\" || allInputs[i].type == \"checkbox\") {\n                if (allInputs[i].value == fieldVal) {\n                    allInputs[i].checked = true;\n                }\n            } else if (allInputs[i].type == \"date\") {\n                allInputs[i].value = getNormalizedDate(fieldVal, acctDateFormat);\n            } else if (allInputs[i].type == \"time\") {\n                allInputs[i].value = getNormalizedTime(fieldVal);\n            } else {\n                allInputs[i].value = fieldVal;\n            }\n        }\n    }\n\n    var remove_tooltips = function() {\n        for (var i = 0; i < tooltips.length; i++) {\n            tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);\n        }\n        tooltips = [];\n    };\n    var remove_tooltip = function(elem) {\n        for (var i = 0; i < tooltips.length; i++) {\n            if (tooltips[i].elem === elem) {\n                tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);\n                tooltips.splice(i, 1);\n                return;\n            }\n        }\n    };\n    var create_tooltip = function(elem, text) {\n        var tooltip = document.createElement('div'),\n            arrow = document.createElement('div'),\n            inner = document.createElement('div'), new_tooltip = {};\n        if (elem.type != 'radio' && (elem.type != 'checkbox' || elem.name === 'sms_consent')) {\n            tooltip.className = '_error';\n            arrow.className = '_error-arrow';\n            inner.className = '_error-inner';\n            inner.innerHTML = text;\n            tooltip.appendChild(arrow);\n            tooltip.appendChild(inner);\n            elem.parentNode.appendChild(tooltip);\n        } else {\n            tooltip.className = '_error-inner _no_arrow';\n            tooltip.innerHTML = text;\n            elem.parentNode.insertBefore(tooltip, elem);\n            new_tooltip.no_arrow = true;\n        }\n        new_tooltip.tip = tooltip;\n        new_tooltip.elem = elem;\n        tooltips.push(new_tooltip);\n        return new_tooltip;\n    };\n    var resize_tooltip = function(tooltip) {\n        var rect = tooltip.elem.getBoundingClientRect();\n        var doc = document.documentElement,\n            scrollPosition = rect.top - ((window.pageYOffset || doc.scrollTop)  - (doc.clientTop || 0));\n        if (scrollPosition < 40) {\n            tooltip.tip.className = tooltip.tip.className.replace(\/ ?(_above|_below) ?\/g, '') + ' _below';\n        } else {\n            tooltip.tip.className = tooltip.tip.className.replace(\/ ?(_above|_below) ?\/g, '') + ' _above';\n        }\n    };\n    var resize_tooltips = function() {\n        if (_removed) return;\n        for (var i = 0; i < tooltips.length; i++) {\n            if (!tooltips[i].no_arrow) resize_tooltip(tooltips[i]);\n        }\n    };\n    var validate_field = function(elem, remove) {\n        var tooltip = null, value = elem.value, no_error = true;\n        remove ? remove_tooltip(elem) : false;\n        if (elem.type != 'checkbox') elem.className = elem.className.replace(\/ ?_has_error ?\/g, '');\n        if (elem.getAttribute('required') !== null) {\n            if (elem.type == 'radio' || (elem.type == 'checkbox' && \/any\/.test(elem.className))) {\n                var elems = form_to_submit.elements[elem.name];\n                if (!(elems instanceof NodeList || elems instanceof HTMLCollection) || elems.length <= 1) {\n                    no_error = elem.checked;\n                }\n                else {\n                    no_error = false;\n                    for (var i = 0; i < elems.length; i++) {\n                        if (elems[i].checked) no_error = true;\n                    }\n                }\n                if (!no_error) {\n                    tooltip = create_tooltip(elem, \"Seleccione una opci\u00f3n.\");\n                }\n            } else if (elem.type =='checkbox') {\n                var elems = form_to_submit.elements[elem.name], found = false, err = [];\n                no_error = true;\n                for (var i = 0; i < elems.length; i++) {\n                    if (elems[i].getAttribute('required') === null) continue;\n                    if (!found && elems[i] !== elem) return true;\n                    found = true;\n                    elems[i].className = elems[i].className.replace(\/ ?_has_error ?\/g, '');\n                    if (!elems[i].checked) {\n                        no_error = false;\n                        elems[i].className = elems[i].className + ' _has_error';\n                        err.push(\"Es necesario verificar %s\".replace(\"%s\", elems[i].value));\n                    }\n                }\n                if (!no_error) {\n                    tooltip = create_tooltip(elem, err.join('<br\/>'));\n                }\n            } else if (elem.tagName == 'SELECT') {\n                var selected = true;\n                if (elem.multiple) {\n                    selected = false;\n                    for (var i = 0; i < elem.options.length; i++) {\n                        if (elem.options[i].selected) {\n                            selected = true;\n                            break;\n                        }\n                    }\n                } else {\n                    for (var i = 0; i < elem.options.length; i++) {\n                        if (elem.options[i].selected\n                            && (!elem.options[i].value\n                            || (elem.options[i].value.match(\/\\n\/g)))\n                        ) {\n                            selected = false;\n                        }\n                    }\n                }\n                if (!selected) {\n                    elem.className = elem.className + ' _has_error';\n                    no_error = false;\n                    tooltip = create_tooltip(elem, \"Seleccione una opci\u00f3n.\");\n                }\n            } else if (value === undefined || value === null || value === '') {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Este campo es obligatorio.\");\n            }\n        }\n        if (no_error && elem.name == 'email') {\n            if (!value.match(\/^[\\+_a-z0-9-'&=]+(\\.[\\+_a-z0-9-']+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[a-z]{2,})$\/i)) {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Introduzca una direcci\u00f3n de correo electr\u00f3nico v\u00e1lida.\");\n            }\n        }\n        if (no_error && (elem.id == 'phone')) {\n            if (elem.value.trim() && typeof iti != 'undefined' && !iti.isValidNumber()) {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Ingresa un n\u00famero de tel\u00e9fono v\u00e1lido.\");\n            }\n        }\n        if (no_error && \/date_field\/.test(elem.className)) {\n            if (!value.match(\/^\\d\\d\\d\\d-\\d\\d-\\d\\d$\/)) {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Introduzca una fecha v\u00e1lida.\");\n            }\n        }\n\n        if (no_error && elem.name === 'sms_consent') {\n            const elemShouldBeChecked = (!!elem.attributes.required && !elem.checked);\n            if (elemShouldBeChecked) {\n                elem.className = elem.className + ' _has_error';\n                no_error = false;\n                tooltip = create_tooltip(elem, \"Marca esta casilla para continuar\");\n            } else {\n                elem.className = elem.className.replace(\/ ?_has_error ?\/g, '');\n            }\n        }\n        tooltip ? resize_tooltip(tooltip) : false;\n        return no_error;\n    };\n    var needs_validate = function(el) {\n        if(el.getAttribute('required') !== null){\n            return true;\n        }\n        if((el.name === 'email' || el.id === 'phone') && el.value !== \"\"){\n            return true;\n        }\n\n        return false;\n    };\n    var validate_form = function(e) {\n        var err = form_to_submit.querySelector('._form_error'), no_error = true;\n        if (!submitted) {\n            submitted = true;\n            for (var i = 0, len = allInputs.length; i < len; i++) {\n                var input = allInputs[i];\n                if (needs_validate(input)) {\n                    if (input.type == 'text' || input.type == 'number' || input.type == 'time' || input.type == 'tel') {\n                        addEvent(input, 'blur', function() {\n                            this.value = this.value.trim();\n                            validate_field(this, true);\n                        });\n                        addEvent(input, 'input', function() {\n                            validate_field(this, true);\n                        });\n                    } else if (input.type == 'radio' || input.type == 'checkbox') {\n                        (function(el) {\n                            function getElementsArray(name){\n                                const value =  form_to_submit.elements[name];\n                                if (Array.isArray(value)){\n                                    return value;\n                                }\n                                return [value];\n                            }\n                            var radios = getElementsArray(el.name);\n                            for (var i = 0; i < radios.length; i++) {\n                                addEvent(radios[i], 'change', function() {\n                                    validate_field(el, true);\n                                });\n                            }\n                        })(input);\n                    } else if (input.tagName == 'SELECT') {\n                        addEvent(input, 'change', function() {\n                            validate_field(this, true);\n                        });\n                    } else if (input.type == 'textarea'){\n                        addEvent(input, 'input', function() {\n                            validate_field(this, true);\n                        });\n                    }\n                }\n            }\n        }\n        remove_tooltips();\n        for (var i = 0, len = allInputs.length; i < len; i++) {\n            var elem = allInputs[i];\n            if (needs_validate(elem)) {\n                if (elem.tagName.toLowerCase() !== \"select\") {\n                    elem.value = elem.value.trim();\n                }\n                validate_field(elem) ? true : no_error = false;\n            }\n        }\n        if (!no_error && e) {\n            e.preventDefault();\n        }\n        resize_tooltips();\n        return no_error;\n    };\n    addEvent(window, 'resize', resize_tooltips);\n    addEvent(window, 'scroll', resize_tooltips);\n\n    window['recaptcha_callback'] = function() {\n  \/\/ Get all recaptchas in the DOM (there may be more than one form on the page).\n  var recaptchas = document.getElementsByClassName(\"g-recaptcha\");\n  for (var i in recaptchas) {\n    \/\/ Set the recaptcha element ID, so the recaptcha can be applied to each element.\n    var recaptcha_id = \"recaptcha_\" + i;\n    recaptchas[i].id = recaptcha_id;\n    var el = document.getElementById(recaptcha_id);\n    if (el != null) {\n      var sitekey = el.getAttribute(\"data-sitekey\");\n      var stoken = el.getAttribute(\"data-stoken\");\n      grecaptcha.render(recaptcha_id, {\"sitekey\":sitekey,\"stoken\":stoken});\n    }\n  }\n};    _load_script(\"https:\/\/www.google.com\/recaptcha\/api.js?onload=recaptcha_callback&render=explicit\");\n    var _form_serialize = function(form){if(!form||form.nodeName!==\"FORM\"){return }var i,j,q=[];for(i=0;i<form.elements.length;i++){if(form.elements[i].name===\"\"){continue}switch(form.elements[i].nodeName){case\"INPUT\":switch(form.elements[i].type){case\"tel\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].previousSibling.querySelector('div.iti__selected-dial-code').innerText)+encodeURIComponent(\" \")+encodeURIComponent(form.elements[i].value));break;case\"text\":case\"number\":case\"date\":case\"time\":case\"hidden\":case\"password\":case\"button\":case\"reset\":case\"submit\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value));break;case\"checkbox\":case\"radio\":if(form.elements[i].checked){q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value))}break;case\"file\":break}break;case\"TEXTAREA\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value));break;case\"SELECT\":switch(form.elements[i].type){case\"select-one\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value));break;case\"select-multiple\":for(j=0;j<form.elements[i].options.length;j++){if(form.elements[i].options[j].selected){q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].options[j].value))}}break}break;case\"BUTTON\":switch(form.elements[i].type){case\"reset\":case\"submit\":case\"button\":q.push(form.elements[i].name+\"=\"+encodeURIComponent(form.elements[i].value));break}break}}return q.join(\"&\")};\n\n    const formSupportsPost = false;\n    var form_submit = function(e) {\n\n        e.preventDefault();\n        if (validate_form()) {\n            if(form_to_submit.querySelector('input[name=\"phone\"]') && typeof iti != 'undefined') {\n                form_to_submit.querySelector('input[name=\"phone\"]').value = iti.getNumber();\n            }\n            \/\/ use this trick to get the submit button & disable it using plain javascript\n            var submitButton = e.target.querySelector('#_form_311_submit');\n            submitButton.disabled = true;\n            submitButton.classList.add('processing');\n                    var serialized = _form_serialize(document.getElementById('_form_311_')).replace(\/%0A\/g, '\\\\n');\n            var err = form_to_submit.querySelector('._form_error');\n            err ? err.parentNode.removeChild(err) : false;\n            async function submitForm() {\n                var formData = new FormData();\n                const searchParams = new URLSearchParams(serialized);\n                searchParams.forEach((value, key) => {\n                    if (key !== 'hideButton') {\n                        formData.append(key, value);\n                    }\n                });\n                let request = {\n                    headers: {\n                        \"Accept\": \"application\/json\"\n                    },\n                    body: formData,\n                    method: \"POST\"\n                };\n\n                let pageUrlParams = new URLSearchParams(window.location.search);\n                if (pageUrlParams.has('t')) {\n                    request.headers.Authorization = 'Bearer ' + pageUrlParams.get('t');\n                }\n                const response = await fetch('https:\/\/deandelafuenteromero.activehosted.com\/proc.php?jsonp=true', request);\n\n                return response.json();\n            }\n            if (formSupportsPost) {\n                submitForm().then((data) => {\n                    eval(data.js);\n                }).catch(() => {\n                    _show_error(\"311\", \"Lo sentimos, ocurri\u00f3 un error con el env\u00edo. Vuelve a intentarlo.\");\n                });\n            } else {\n                _load_script('https:\/\/deandelafuenteromero.activehosted.com\/proc.php?' + serialized + '&jsonp=true', null, true);\n            }\n        }\n        return false;\n    };\n    addEvent(form_to_submit, 'submit', form_submit);\n})();\n\n<\/script><\/div><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3: Advanced XML Sitemap Configuration<\/h3>\n\n\n\n<p>Once you&#8217;ve determined what to check in those two options, you will proceed to cover a more advanced configuration.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"636\" height=\"296\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Advanced-configuration-of-the-Google-XML-sitemaps-plugin.png\" alt=\"Advanced configuration of the Google XML sitemaps plugin\" class=\"wp-image-21729\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Advanced-configuration-of-the-Google-XML-sitemaps-plugin.png 636w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Advanced-configuration-of-the-Google-XML-sitemaps-plugin-300x140.png 300w\" sizes=\"(max-width: 636px) 100vw, 636px\" \/><\/figure><\/div>\n\n\n<p>I&#8217;ll explain what each option does so that you can configure it as tailored to your website as possible:<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Try to increase memory limit to:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>Allows increasing the PHP memory limit used by WordPress to generate the sitemap.<\/p>\n\n\n\n<p>This is used to <strong>prevent resource overload errors<\/strong>, which is useful for large sites. You need to specify the value in megabytes (for example, &#8216;4M&#8217; or &#8217;16M&#8217;).<\/p>\n\n\n\n<p>In this case, if your website is <strong>medium or small<\/strong>, I recommend avoiding complications and <strong>leaving this option blank<\/strong>.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Try to increase execution time limit to:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>This box allows you to <strong>determine the execution time limit for generating the sitemap<\/strong>. It is specified in seconds (for example, &#8217;60&#8217; for one minute) or &#8216;0&#8217; for unlimited.<\/p>\n\n\n\n<p>It is useful for <strong>websites with many pages<\/strong> whose sitemap faces complications when gathering all of them. If this is not your case, it might be better to disregard this field.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Attempt to automatically compress the sitemap if the requesting client supports it:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>When you enable this option, the sitemap will be compressed in gzip format if the browser or search engine requesting it can handle compression. This <strong>reduces load time and bandwidth usage<\/strong>.<\/p>\n\n\n\n<p>If your sitemap is too large, you can check this option to avoid overloading your server.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include an XSLT stylesheet:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>Allows you to specify a full or relative URL to an XSLT stylesheet. This stylesheet can be used to <strong>enhance the presentation of the sitemap<\/strong> when viewed in a web browser.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Omit the base URL of the sitemap:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>Use this option if your website is in a subdirectory and you want the sitemap to be located at the root of the domain.<\/p>\n\n\n\n<p>It can <strong>improve indexing<\/strong>, but be careful, as it often requires modifications to the .htaccess file.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Override the sitemap file name:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>With this option, you can change the sitemap file name.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include the sitemap in HTML format.<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>Selecting this option will create a<strong> new page<\/strong> that displays the sitemap in a more visual manner for users.<\/p>\n\n\n\n<p>These options might be more complex for the average user, but by following these guidelines and instructions, you&#8217;ll get a better idea of how to configure them in each case.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 4: Selection of Additional Pages<\/h3>\n\n\n\n<p>This section of the sitemap plugin allows you to add specific pages or URLs to the sitemap that are not part of your normal WordPress site structure.<\/p>\n\n\n\n<p>This can be useful for <strong>including important pages that are outside the main WordPress installation<\/strong>, such as pages in a subdirectory or even on another related domain.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"188\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Configure-additional-pages-in-the-sitemap-1024x188.png\" alt=\"Configure additional pages in the sitemap\" class=\"wp-image-21731\" title=\"Configure additional pages in the sitemap\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Configure-additional-pages-in-the-sitemap-1024x188.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Configure-additional-pages-in-the-sitemap-300x55.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Configure-additional-pages-in-the-sitemap-768x141.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Configure-additional-pages-in-the-sitemap.png 1450w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p>The fields to fill out to configure the additional pages are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Page URL<\/strong>: Enter the full URL of the page you want to add to the sitemap.<\/li>\n\n\n\n<li><strong>Priority<\/strong>: Set the priority of the page relative to other pages. For example, the homepage might have a higher priority than an article page.<\/li>\n\n\n\n<li><strong>Last Modified<\/strong>: Enter the date of the last change in YYYY-MM-DD format. This field is optional.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Step 5: Determine the Priority of Entries<\/h3>\n\n\n\n<p>In this section of the sitemap plugin, you can configure how the priority will be assigned to each page or entry on your website in the sitemap.<\/p>\n\n\n\n<p>Priority is a<strong> way to indicate to search engines which pages are most important on your site<\/strong>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"428\" height=\"242\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Configure-entry-priority-in-the-sitemap.png\" alt=\"Configure entry priority in the sitemap\" class=\"wp-image-21733\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Configure-entry-priority-in-the-sitemap.png 428w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Configure-entry-priority-in-the-sitemap-300x170.png 300w\" sizes=\"(max-width: 428px) 100vw, 428px\" \/><\/figure><\/div>\n\n\n<p>In this case, you can choose from 3 options:<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-circle\" style=\"color:#00937D\"><\/i> <strong>Do not use automatic priority calculation:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p><strong>All entries will have the same priority<\/strong>. There will be no automatic calculation to determine which entries are more important.<\/p>\n\n\n\n<p>You can manually select the priority in the &#8220;Priorities&#8221; section.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-circle\" style=\"color:#00937D\"><\/i> <strong>Comment Counter:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>This option <strong>uses the number of comments on an article to calculate its priority<\/strong>. The more comments an entry has, the higher its priority will be.<\/p>\n\n\n\n<p>It&#8217;s useful for blogs and sites where user engagement is a good indicator of relevance.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-circle\" style=\"color:#00937D\"><\/i> <strong>Average Comments:<\/strong><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>The <strong>average number of comments is used to calculate the priority<\/strong>. This provides a priority based on the average number of comments across all your entries.<\/p>\n\n\n\n<p>Once you have determined how you prioritize the entries in the sitemap, it&#8217;s time to choose the elements you want to include in it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 6: Sitemap Content<\/h3>\n\n\n\n<p>A key part of this process is determining the parts of your website you want to appear in the sitemap. The XML Sitemap Generator for Google plugin allows you to choose from the following options:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"769\" height=\"618\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Select-sitemap-parts-when-configuring-it.png\" alt=\"Select sitemap parts when configuring it\" class=\"wp-image-21735\" title=\"Select sitemap parts when configuring it\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Select-sitemap-parts-when-configuring-it.png 769w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Select-sitemap-parts-when-configuring-it-300x241.png 300w\" sizes=\"(max-width: 769px) 100vw, 769px\" \/><\/figure><\/div>\n\n\n<p>I recommend selecting the following checkboxes:<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include homepage: <\/strong>It&#8217;s always important to include the homepage in the sitemap since it&#8217;s one of the most important pages on your site.<\/li>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include posts: <\/strong>If you have a blog, including all posts is essential to ensure that all your content is indexed.<\/li>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include product categories: <\/strong>If you have an online store, it&#8217;s useful to include product categories to improve the indexing of your catalog.<\/li>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include product tags<\/strong>: Also relevant for online stores, as it helps search engines better understand the structure of your products.<\/li>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include products<\/strong>: Fundamental for online stores to ensure all products are crawled and indexed.<\/li>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include static pages<\/strong>: It&#8217;s important to include static pages so that all relevant pages of your site are indexed.<\/li>\n<li><i class=\"sui sui-check-square\" style=\"color:#00937D\"><\/i> <strong>Include last modified date<\/strong>: Highly recommended, as it informs search engines about recent updates to your content.<\/li>\n<\/ul>\n<\/div>\n\n\n\n<p>The other options you check will depend on your project and its characteristics.<\/p>\n\n\n\n<p>For example, if your site has authoritative authors, it&#8217;s interesting to check the option to <strong>include author pages<\/strong>, as this way you will <a href=\"https:\/\/dinorank.com\/en-us\/blog-seo\/what-is-the-eeat-and-how-to-work-with-it\/\" target=\"_blank\" rel=\"noreferrer noopener\">strengthen your EEAT<\/a>.<\/p>\n\n\n\n<p>Websites with downloadable files like PDFs, books, and even videos should consider checking the option to <strong>include files<\/strong>.<\/p>\n\n\n\n<p>As for the <strong>number of links, it is advisable to set it to 1000<\/strong>, as this value ensures a balance between having manageable sitemap files and maximizing the number of links indexed per file.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 7: Use excluded elements<\/h3>\n\n\n\n<p>If you want to exclude any part of your website from the sitemap, this is the ideal time to do it.<\/p>\n\n\n\n<p>In the excluded elements section, you can determine everything from categories you don&#8217;t want to index to specific posts.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"564\" height=\"326\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Determine-the-elements-you-want-to-exclude-from-the-sitemap-when-configuring-it.png\" alt=\"Determine the elements you want to exclude from the sitemap when configuring it\" class=\"wp-image-21737\" title=\"Determine the elements you want to exclude from the sitemap when configuring it\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Determine-the-elements-you-want-to-exclude-from-the-sitemap-when-configuring-it.png 564w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Determine-the-elements-you-want-to-exclude-from-the-sitemap-when-configuring-it-300x173.png 300w\" sizes=\"(max-width: 564px) 100vw, 564px\" \/><\/figure><\/div>\n\n\n<p>This is <strong>ideal if you have irrelevant content<\/strong> for users and no keywords but need to keep it on your site for any reason. A clear example could be an <em>internal news category<\/em>, which is only interesting for team members.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><em>Note: Nested articles will not be automatically excluded!<\/em><\/strong><\/li>\n<\/ul>\n\n\n\n<p>This means that if you exclude an article from the sitemap in this field, the articles attached to it will still be included in the sitemap.<\/p>\n\n\n\n<p>Let&#8217;s say you have a page with <strong>ID 100<\/strong> (&#8220;Products&#8221;) and <strong>two child pages with IDs 101 and 102<\/strong> (&#8220;Product 1&#8221; and &#8220;Product 2&#8221;). If you only specify 100 in the exclusion field, only the &#8220;Products&#8221; page will be excluded.<\/p>\n\n\n\n<p>To also exclude the child pages, <strong>you must write 100, 101, 102<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 8: Update change frequency<\/h3>\n\n\n\n<p>In the &#8220;Change Frequency&#8221; section, you can select how often you want crawlers to visit your website.<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n<p><strong>Try to match the frequency with which you publish content or make changes<\/strong>.<\/p>\n<\/div>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>One very positive aspect of this section is that you can set <strong>different frequencies<\/strong> based on the content present on your website. Keep in mind that a section like the blog might need more frequent crawling than author pages.<\/p>\n<\/blockquote>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"292\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Sitemap-Change-Frequency-1024x292.png\" alt=\"Sitemap Change Frequency\" class=\"wp-image-21740\" title=\"Sitemap Change Frequency\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Sitemap-Change-Frequency-1024x292.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Sitemap-Change-Frequency-300x85.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Sitemap-Change-Frequency-768x219.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Sitemap-Change-Frequency.png 1461w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">Step 9: Determine Your Content Priorities<\/h3>\n\n\n\n<p>Additionally, in the next section &#8220;Priorities,&#8221; you can assign scores to value the importance of elements on your website so that Google understands it as well and <strong>set a priority order for crawling in the sitemap<\/strong>.<\/p>\n\n\n\n<p>This way, you are telling Google <strong>which type of content you are most interested in indexing<\/strong>.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>I recommend setting the minimum priority for sections like categories or tags.<\/p>\n<\/blockquote>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"503\" height=\"353\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Sitemap-Priorities.png\" alt=\"Sitemap Priorities\" class=\"wp-image-21742\" title=\"Sitemap Priorities\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Sitemap-Priorities.png 503w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Sitemap-Priorities-300x211.png 300w\" sizes=\"(max-width: 503px) 100vw, 503px\" \/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">Step 10: Submit the Sitemap to Google Search Console<\/h3>\n\n\n\n<p>After creating the XML Sitemap, <strong>you need to upload it to Search Console so that Google takes it into account<\/strong>. This is a very important step because otherwise, Google\u2019s crawler might never detect it.<\/p>\n\n\n\n<p>To do this, you need to submit a sitemap by following these instructions:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 1:<\/strong> Log in to Google Search Console with your account and select the corresponding website.<\/li>\n\n\n\n<li><strong>Step 2:<\/strong> Click on &#8220;Sitemaps&#8221; in the left-hand menu.<\/li>\n\n\n\n<li><strong>Step 3:<\/strong> Enter the URL of the sitemap, usually &#8220;<em>https:\/\/yourdomain.com\/sitemap.xml<\/em>&#8220;. You can find it at the top of the plugin settings.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"188\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/How-to-Find-the-Sitemap-URL.png\" alt=\"How to Find the Sitemap URL\" class=\"wp-image-21744\" title=\"How to Find the Sitemap URL\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/How-to-Find-the-Sitemap-URL.png 709w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/How-to-Find-the-Sitemap-URL-300x80.png 300w\" sizes=\"(max-width: 709px) 100vw, 709px\" \/><\/figure><\/div>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 4:<\/strong> Click on &#8220;Submit sitemap&#8221;.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"373\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Submit-Sitemap-to-Google-Search-Console-1024x373.png\" alt=\"Submit Sitemap to Google Search Console\" class=\"wp-image-21746\" title=\"Submit Sitemap to Google Search Console\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Submit-Sitemap-to-Google-Search-Console-1024x373.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Submit-Sitemap-to-Google-Search-Console-300x109.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Submit-Sitemap-to-Google-Search-Console-768x280.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Submit-Sitemap-to-Google-Search-Console-1536x559.png 1536w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Submit-Sitemap-to-Google-Search-Console.png 1566w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p>All set! Google will take a little time to verify it, but once it does, you will have the assurance that Google now knows the structure of your website&#8217;s URLs.<\/p>\n\n\n\n<p>It&#8217;s a good idea to check in from time to time to <strong>see when the website crawls occur<\/strong>, in case you need to make changes to the Google XML Sitemap settings.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Configure an XML Sitemap for an Ecommerce<\/h2>\n\n\n\n<p>Regarding the configuration I explained above, you should ensure these options are met:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 1:<\/strong> Include product categories, product tags, and your own products in the sitemap. This will help them appear in search results.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"286\" height=\"292\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Include-Your-Products-in-the-Sitemap.png\" alt=\"Include Your Products in the Sitemap\" class=\"wp-image-21748\" title=\"Include Your Products in the Sitemap\"\/><\/figure><\/div>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 2:<\/strong> Update the change frequencies according to the updates you make in your ecommerce.<\/li>\n\n\n\n<li><strong>Step 3:<\/strong> Modify the importance value so that the automatic priority calculation favors the products that are most interesting.<\/li>\n\n\n\n<li><strong>Step 4:<\/strong> Submit the different product XML sitemaps to Google Search Console so that Google understands the hierarchy of your ecommerce URLs.<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/06\/configurar-sitemap-productos.webp\" alt=\"How to Configure Product Sitemaps\" class=\"wp-image-23648\" title=\"How to Configure Product Sitemaps\"\/><\/figure><\/div>\n\n\n<p>This way, the product pages of your online store will have a higher chance of being indexed and attracting potential buyers to your website.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Configure an XML Sitemap for News for Google News<\/h2>\n\n\n\n<p>If you have a news website, you can create an <strong>XML sitemap for indexing in Google News<\/strong>.<\/p>\n\n\n\n<p><strong>Google News<\/strong> is a Google application where current news from different media outlets is published, distinguishing this type of content in search results.<\/p>\n\n\n\n<p>To create an XML sitemap to appear on this platform, follow these steps:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 1:<\/strong> Download and activate a plugin compatible with XML Google Sitemaps aimed at creating Google News sitemaps.<\/li>\n<\/ul>\n\n\n\n<p>I recommend using the plugin <a href=\"https:\/\/wordpress.org\/plugins\/xml-sitemap-feed\/\" target=\"_blank\" rel=\"noreferrer noopener\">XML Sitemap &amp; Google News<\/a>.<\/p>\n\n\n\n<p><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"586\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/06\/plugin-sitemap-google-news.webp\" alt=\"Google News Plugin for Generating Sitemaps\"><br><strong>Step 2:<\/strong> Go to reading settings and enable both sitemaps.<br>WordPress detects a conflict between the Google Sitemaps plugin I showed earlier and the Google News sitemaps plugin. Therefore, you need to go to reading settings and enable these two options:<\/p>\n\n\n<div class=\"su-list\" style=\"margin-left:0px\">\n&lt;ul&gt;<br \/>\n&lt;li&gt;&lt;strong&gt;XML Sitemap Index.&lt;\/strong&gt;&lt;\/li&gt;<br \/>\n&lt;li&gt;&lt;strong&gt;Google News Sitemap.&lt;\/strong&gt;&lt;\/li&gt;<br \/>\n&lt;\/ul&gt;<br \/>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"756\" height=\"763\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Enable-XML-sitemaps.png\" alt=\"Enable XML sitemaps\" class=\"wp-image-21751\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Enable-XML-sitemaps.png 756w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Enable-XML-sitemaps-297x300.png 297w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Enable-XML-sitemaps-150x150.png 150w\" sizes=\"(max-width: 756px) 100vw, 756px\" \/><\/figure>\n\n\n\n<p><br><strong>Step 3:&nbsp;<\/strong>Go to Settings &gt; Google News.<br>Here you can set a<strong> default title<\/strong> for publications in Google News. <br><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"417\" src=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Google-News-1024x417.png\" alt=\"\" class=\"wp-image-21752\" srcset=\"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Google-News-1024x417.png 1024w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Google-News-300x122.png 300w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Google-News-768x313.png 768w, https:\/\/dinorank.com\/en-us\/blog-seo\/wp-content\/uploads\/2024\/09\/Google-News.png 1500w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><br><br> If you have article categories that are not current news, it&#8217;s advisable not to include them, as Google News has a format similar to a digital newspaper and will only publish your most up-to-date content.<\/p>\n\n\n\n<p><strong>Step 4:<\/strong> Upload the Google News sitemap to Search Console.<\/p>\n\n\n\n<p>Copy the URL provided by your Google News sitemap plugin, which is usually https:\/\/yourdomain.com\/sitemap-news.xml, and submit it as a regular sitemap through Google Search Console.<img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"357\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/06\/mapa-del-sitio-google-news.webp\" alt=\"Google News Sitemap\"> This way, Google will know that your website is dedicated to publishing current news. Additionally, to ensure your content gets published, it&#8217;s also advisable to register at <a href=\"https:\/\/publishercenter.google.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Google News Publisher Center<\/a> with a Google account and manually add the URL of each news article. <\/p>\n\n\n\n<p>This way, you will <strong>further encourage its publication<\/strong>. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Set Up a Local KML Sitemap<\/h2>\n\n\n\n<p>If you have a physical business, you might be interested in <strong>setting up a local KML sitemap<\/strong> to boost your website&#8217;s local SEO. Although these types of sitemaps are less significant than they were years ago, it&#8217;s a simple action that can give a small boost to your business&#8217;s ranking in local searches. To do this, create a local sitemap by going to a website that generates KML sitemaps for free, like <a href=\"https:\/\/www.geositemapgenerator.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.geositemapgenerator.com\/<\/a>. <\/p>\n\n\n\n<p>Once there, follow these steps: <\/p>\n\n\n\n<p><strong>Step 1:<\/strong> Enter your business information.<\/p>\n\n\n\n<p>Once you enter the website and start generating the sitemap, a form will appear that you can fill out with your business information.<\/p>\n\n\n\n<p>I advise you to use the same ones you use everywhere the brand is present to optimize the NAPU (Name, Address, Phone, URL).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/06\/genera-sitemap-local-kml.webp\" alt=\"How to generate a local sitemap with KML extension\" class=\"wp-image-23662\" title=\"How to generate a local sitemap with KML extension\"\/><\/figure><\/div>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 2<\/strong>: Complete the remaining fields to configure the local sitemap.<\/li>\n\n\n\n<li><strong>Step 3<\/strong>: Download the sitemap.KML file and upload it to your website&#8217;s server.<\/li>\n\n\n\n<li><strong>Step 4<\/strong>: Submit the local sitemap URL to Google Search Console. Generally, it will be https:\/\/yourdomain.com\/locations.kml.<\/li>\n<\/ul>\n\n\n\n<p>And that&#8217;s it, you will have your local sitemap generated. Keep in mind that this action is becoming less relevant for local SEO, but it never hurts to do it.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Correctly configuring the XML sitemap will help improve your website&#8217;s indexing<\/h4>\n\n\n\n<p>Now you know how to create an XML sitemap on your website and what other sitemap formats are and how to create them.<\/p>\n\n\n\n<p>It&#8217;s a simple process thanks to plugins like the one we discussed: Google XML Sitemaps.<\/p>\n\n\n\n<p>I hope I have helped you understand what an XML sitemap is and how to configure it like a professional.<\/p>\n\n\n\n<p>Share your questions and experiences in the comments \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Are you starting in SEO and want to learn how to get your web pages to show up in search results? You should know that a key part of this process is having a well-configured sitemap. This way, Google&#8217;s robot will know which URLs on your website it should show to users. Setting up and [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":21773,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[52],"tags":[],"class_list":["post-21705","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-seo-for"],"acf":[],"_links":{"self":[{"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/posts\/21705","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/comments?post=21705"}],"version-history":[{"count":19,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/posts\/21705\/revisions"}],"predecessor-version":[{"id":22696,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/posts\/21705\/revisions\/22696"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/media\/21773"}],"wp:attachment":[{"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/media?parent=21705"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/categories?post=21705"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dinorank.com\/en-us\/blog-seo\/wp-json\/wp\/v2\/tags?post=21705"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}