{"id":284,"date":"2023-03-27T11:04:54","date_gmt":"2023-03-27T09:04:54","guid":{"rendered":"https:\/\/dinorank.com\/sombrero-blanco\/?p=284"},"modified":"2025-05-30T13:42:52","modified_gmt":"2025-05-30T11:42:52","slug":"guia-pre-post-seo-herramientas-online-gratuitas","status":"publish","type":"post","link":"https:\/\/dinorank.com\/blog\/tutorial-prepostseo","title":{"rendered":"[Gu\u00eda] Pre Post SEO: herramientas online gratuitas"},"content":{"rendered":"<p>Cuando trabajas en una web online a veces necesitas hacer <strong>peque\u00f1as tareas aparentemente sencillas<\/strong> pero que te pueden robar m\u00e1s tiempo del que esperabas.<\/p>\n<p>Por ejemplo, reducir el peso de una imagen, comprobar si una palabra est\u00e1 bien escrita, crear un favicon&#8230;<\/p>\n<p>A veces una b\u00fasqueda r\u00e1pida en Google te mostrar\u00e1 herramientas online que pueden ayudarte con estas tareas pero no siempre aciertas a la primera ni esas herramientas son tan gratuitas o efectivas como parec\u00eda.<\/p>\n<p>Cuando tienes mucha experiencia a tus espaldas sueles tener tu propio repositorio de herramientas guardadas en tus marcadores de Google Chrome, por ejemplo, pero cuando das tus primeros pasos te puede suponer un mundo solventar alguna de estas tareas.<\/p>\n<p>Por eso te traemos <strong>Pre Post SEO, una web que condensa decenas de herramientas online para facilitarte la vida<\/strong> (incluso si ya llevas muchos a\u00f1os en el SEO&#8230;)<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter size-full wp-image-14553\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/Pre-Post-SEO-herramientas-online-gratuitas.png\" alt=\"Pre Post SEO herramientas online gratuitas\" width=\"1100\" height=\"600\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/Pre-Post-SEO-herramientas-online-gratuitas.png 1100w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/Pre-Post-SEO-herramientas-online-gratuitas-300x164.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/Pre-Post-SEO-herramientas-online-gratuitas-1024x559.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/Pre-Post-SEO-herramientas-online-gratuitas-768x419.png 768w\" sizes=\"(max-width: 1100px) 100vw, 1100px\" \/><\/p>\n<h2>\u00bfQu\u00e9 es Pre Post SEO?<\/h2>\n<p>Pre Post SEO es un repositorio de herramientas online gratuitas que puedes utilizar desde una sola plataforma.<\/p>\n<p>Al tratarse de herramientas sin coste tienen algunas <strong>limitaciones que se pueden eliminar recurriendo a uno de los planes de pago<\/strong>.<\/p>\n<p>Sin embargo, para resolver escollos con facilidad y rapidez la opci\u00f3n gratuita es perfectamente v\u00e1lida.<\/p>\n<p>Sus herramientas se dividen en cuatro bloques tem\u00e1ticos:<\/p>\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-gear\" style=\"color:#333\"><\/i> <strong>Escritura y educaci\u00f3n<\/strong>. Todo lo relacionado con el contenido en texto<\/li>\n<li><i class=\"sui sui-gear\" style=\"color:#333\"><\/i> <strong>Herramientas de dominio<\/strong>. Herramientas relacionadas con la gesti\u00f3n y an\u00e1lisis de dominios.<\/li>\n<li><i class=\"sui sui-gear\" style=\"color:#333\"><\/i> <strong>Herramientas de gesti\u00f3n de sitios web<\/strong>. Funciones enfocadas a aspectos m\u00e1s t\u00e9cnicos.<\/li>\n<li><i class=\"sui sui-gear\" style=\"color:#333\"><\/i> <strong>Otras herramientas<\/strong>. M\u00f3dulos variados relacionados sobre todo con conversiones de c\u00f3digo, imagen, texto&#8230;<\/li>\n<\/ul>\n<\/div>\n<p>Una vez que accedes a la herramienta de tu elecci\u00f3n podr\u00e1s ver que es muy f\u00e1cil utilizar la plataforma ya que contiene solo los elementos necesarios para realizar tu tarea.<\/p>\n<p>Adem\u00e1s, debajo encontrar\u00e1s siempre un peque\u00f1o tutorial para que sepas usarla y tienes un chat de soporte online en el lado derecho de la pantalla por si necesitas m\u00e1s ayuda.<\/p>\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:#333333;color:#FFFFFF;border-top-left-radius:1px;border-top-right-radius:1px\">Solo en ingl\u00e9s<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:1px;border-bottom-right-radius:1px\">Uno de los inconvenientes que podr\u00eda tener esta web es que est\u00e1 en ingl\u00e9s pero si supone un problema para ti, puedes hacer click derecho y traducirla de forma autom\u00e1tica gracias a Google Chrome.<\/p>\n<p>A\u00fan as\u00ed, en la columna de la derecha puedes hacer click en el bot\u00f3n &#8220;Espa\u00f1ol&#8221; para que la web te muestre las herramientas que est\u00e1n traducidas a nuestro idioma.<\/div><\/div>\n<h2>Ventajas y desventajas de Pre Post SEO<\/h2>\n<p>Antes de contarte cu\u00e1les son algunas de las mejores herramientas de Pre Post SEO vamos a analizar tanto los pros como los contras que le hemos encontrado.<\/p>\n<p>De esta manera podemos ayudarte a decidir aunque <strong>trat\u00e1ndose de herramientas gratuitas puedes testarlas t\u00fa mismo<\/strong> sin tener que invertir ni un euro.<\/p>\n<h3>Pros<\/h3>\n<ul>\n<li>Los planes de pago son bastante econ\u00f3micos para lo que ofrece y tienes la opci\u00f3n de hacer pagos mensuales o anuales.<\/li>\n<li>Tiene integraciones con Google Chrome y WordPress que facilitan el uso de algunas herramientas mientras se est\u00e1 trabajando.<\/li>\n<li>Aunque el lenguaje principal es el ingl\u00e9s, algunas funciones cuentan con traducci\u00f3n al espa\u00f1ol.<\/li>\n<\/ul>\n<h3>Contras<\/h3>\n<ul>\n<li>La atenci\u00f3n al cliente es algo deficiente.<\/li>\n<li>Sus herramientas SEO no trabajan con mucha profundidad, son demasiado b\u00e1sicas<\/li>\n<li>No sirve para trabajar una web por completo, siempre vas a necesitar herramientas SEO especializadas<\/li>\n<\/ul>\n<p>A continuaci\u00f3n vamos a analizar algunas de las herramientas de Pre Post SEO m\u00e1s \u00fatiles y con mejores resultados.<\/p>\n<p><span data-sheets-root=\"1\"><div id=\"brxe-5c527e\" class=\"brxe-block p-2 gap-15\"><div id=\"brxe-d69b57\" class=\"brxe-text-basic h3\">Descubre 6 t\u00e9cnicas sencillas (pero eficaces) para que las visitas de tu web crezcan m\u00e1s r\u00e1pido que la espuma de una cerveza mal tirada.\n<\/div><div id=\"brxe-445cc8\" class=\"brxe-text-basic\"><strong>Aunque no seas un experto en SEO<\/strong> ni puedas dedicarte mucho tiempo a esto.<\/div><div id=\"brxe-lbvkeh\" data-script-id=\"lbvkeh\" class=\"brxe-code incontent-form-html\"><style>@import url(https:\/\/fonts.bunny.net\/css?family=source-sans-pro:400,700);<\/style>\n<style>\n#_form_331_{font-size:14px;line-height:1.6;font-family:arial, helvetica, sans-serif;margin:0}#_form_331_ *{outline:0}._form_hide{display:none;visibility:hidden}._form_show{display:block;visibility:visible}#_form_331_._form-top{top:0}#_form_331_._form-bottom{bottom:0}#_form_331_._form-left{left:0}#_form_331_._form-right{right:0}#_form_331_ input[type=\"text\"],#_form_331_ input[type=\"tel\"],#_form_331_ input[type=\"date\"],#_form_331_ 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_331_ textarea{resize:none}#_form_331_ ._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_331_ ._submit:disabled{cursor:not-allowed;opacity:0.4}#_form_331_ ._submit.processing{position:relative}#_form_331_ ._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_331_ ._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_331_ ._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_331_ ._close-icon:before{position:relative}#_form_331_ ._form-body{margin-bottom:30px}#_form_331_ ._form-image-left{width:150px;float:left}#_form_331_ ._form-content-right{margin-left:164px}#_form_331_ ._form-branding{color:#fff;font-size:10px;clear:both;text-align:left;margin-top:30px;font-weight:100}#_form_331_ ._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_331_ .form-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}#_form_331_ ._form-label,#_form_331_ ._form_element ._form-label{font-weight:bold;margin-bottom:5px;display:block}#_form_331_._dark ._form-branding{color:#333}#_form_331_._dark ._form-branding ._logo{background-image:url(\"https:\/\/d226aj4ao1t61q.cloudfront.net\/jftq2c8s_aclogo_dk.png\")}#_form_331_ ._form_element{position:relative;margin-bottom:10px;font-size:0;max-width:100%}#_form_331_ ._form_element *{font-size:14px}#_form_331_ ._form_element._clear{clear:both;width:100%;float:none}#_form_331_ ._form_element._clear:after{clear:left}#_form_331_ ._form_element input[type=\"text\"],#_form_331_ ._form_element input[type=\"date\"],#_form_331_ ._form_element select,#_form_331_ ._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_331_ ._field-wrapper{position:relative}#_form_331_ ._inline-style{float:left}#_form_331_ ._inline-style input[type=\"text\"]{width:150px}#_form_331_ ._inline-style:not(._clear){margin-right:20px}#_form_331_ ._form_element img._form-image{max-width:100%}#_form_331_ ._form_element ._form-fieldset{border:0;padding:0.01em 0 0 0;margin:0;min-width:0}#_form_331_ ._clear-element{clear:left}#_form_331_ ._full_width{width:100%}#_form_331_ ._form_full_field{display:block;width:100%;margin-bottom:10px}#_form_331_ input[type=\"text\"]._has_error,#_form_331_ textarea._has_error{border:#F37C7B 1px solid}#_form_331_ input[type=\"checkbox\"]._has_error{outline:#F37C7B 1px solid}#_form_331_ ._show_be_error{float:left}#_form_331_ ._error{display:block;position:absolute;font-size:14px;z-index:10000001}#_form_331_ ._error._above{padding-bottom:4px;bottom:39px;right:0}#_form_331_ ._error._below{padding-top:8px;top:100%;right:0}#_form_331_ ._error._above ._error-arrow{bottom:-4px;right:15px;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #FFDDDD}#_form_331_ ._error._below ._error-arrow{top:0;right:15px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid #FFDDDD}#_form_331_ ._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_331_ ._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_331_ ._error-inner._form_error{margin-bottom:5px;text-align:left}#_form_331_ ._button-wrapper ._error-inner._form_error{position:static}#_form_331_ ._error-inner._no_arrow{margin-bottom:10px}#_form_331_ ._error-arrow{position:absolute;width:0;height:0}#_form_331_ ._error-html{margin-bottom:10px}.pika-single{z-index:10000001 !important}#_form_331_ input[type=\"text\"].datetime_date{width:69%;display:inline}#_form_331_ select.datetime_time{width:29%;display:inline;height:32px}#_form_331_ input[type=\"date\"].datetime_date{width:69%;display:inline-flex}#_form_331_ input[type=\"time\"].datetime_time{width:29%;display:inline-flex}@media (min-width:320px) and (max-width:667px){::-webkit-scrollbar{display:none}#_form_331_{margin:0;width:100%;min-width:100%;max-width:100%;box-sizing:border-box}#_form_331_ *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-size:1em}#_form_331_ ._form-content{margin:0;width:100%}#_form_331_ ._form-inner{display:block;min-width:100%}#_form_331_ ._form-title,#_form_331_ ._inline-style{margin-top:0;margin-right:0;margin-left:0}#_form_331_ ._form-title{font-size:1.2em}#_form_331_ ._form_element{margin:0 0 20px;padding:0;width:100%}#_form_331_ ._form-element,#_form_331_ ._inline-style,#_form_331_ input[type=\"text\"],#_form_331_ label,#_form_331_ p,#_form_331_ textarea:not(.g-recaptcha-response){float:none;display:block;width:100%}#_form_331_ ._row._checkbox-radio label{display:inline}#_form_331_ ._row,#_form_331_ p,#_form_331_ label{margin-bottom:0.7em;width:100%}#_form_331_ ._row input[type=\"checkbox\"],#_form_331_ ._row input[type=\"radio\"]{margin:0 !important;vertical-align:middle !important}#_form_331_ ._row input[type=\"checkbox\"]+span label{display:inline}#_form_331_ ._row span label{margin:0 !important;width:initial !important;vertical-align:middle !important}#_form_331_ ._form-image{max-width:100%;height:auto !important}#_form_331_ input[type=\"text\"]{padding-left:10px;padding-right:10px;font-size:16px;line-height:1.3em;-webkit-appearance:none}#_form_331_ input[type=\"radio\"],#_form_331_ 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_331_ button[type=\"submit\"]{padding:20px;font-size:1.5em}#_form_331_ ._inline-style{margin:20px 0 0 !important}#_form_331_ ._inline-style input[type=\"text\"]{width:100%}}#_form_331_ .sms_consent_checkbox{position:relative;width:100%;display:flex;align-items:flex-start;padding:20px 0}#_form_331_ .sms_consent_checkbox input[type=\"checkbox\"]{float:left;margin:5px 10px 10px 0}#_form_331_ .sms_consent_checkbox .sms_consent_message{display:inline;float:left;text-align:left;margin-bottom:10px;font-size:14px;color:#7D8799}#_form_331_ .sms_consent_checkbox .sms_consent_message.sms_consent_mini{width:90%}#_form_331_ .sms_consent_checkbox ._error._above{right:auto;bottom:0}#_form_331_ .sms_consent_checkbox ._error._above ._error-arrow{right:auto;left:5px}@media (min-width:320px) and (max-width:667px){#_form_331_ .sms_consent_checkbox ._error._above{top:-30px;left:0;bottom:auto}}#_form_331_ .field-required{color:#FF0000}#_form_331_{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_331_ ._show_be_error{min-width:100%}#_form_331_._inline-form,#_form_331_._inline-form ._form-content{font-family:Source Sans Pro;font-size:14px;font-weight:400}#_form_331_._inline-form ._row span,#_form_331_._inline-form ._row label{font-family:Source Sans Pro;font-size:14px;font-weight:400;line-height:1.6em;color:#888 !important}#_form_331__inlineform input[type=\"text\"],#_form_331__inlineform input[type=\"date\"],#_form_331__inlineform input[type=\"tel\"],#_form_331__inlineform select,#_form_331__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_331_._inline-form ._html-code *:not(h1, h2, h3, h4, h5, h6),#_form_331_._inline-form .sms_consent_message,#_form_331_._inline-form ._form-thank-you{font-family:Source Sans Pro;font-size:14px;font-weight:400;color:#888 !important}#_form_331_._inline-form ._form-label,#_form_331_._inline-form ._form-emailidentifier,#_form_331_._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_331_._inline-form ._submit{margin-top:12px;font-family:Source Sans Pro;font-size:14px;font-weight:400}#_form_331_._inline-form ._html-code h1,#_form_331_._inline-form ._html-code h2,#_form_331_._inline-form ._html-code h3,#_form_331_._inline-form ._html-code h4,#_form_331_._inline-form ._html-code h5,#_form_331_._inline-form ._html-code h6,#_form_331_._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_331_._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_331_:before,#_form_331_:after{content:\" \";display:table}#_form_331_:after{clear:both}#_form_331_._inline-style{width:auto;display:inline-block}#_form_331_._inline-style input[type=\"text\"],#_form_331_._inline-style input[type=\"date\"]{padding:10px 12px}#_form_331_._inline-style button._inline-style{position:relative;top:27px}#_form_331_._inline-style p{margin:0}#_form_331_._inline-style ._button-wrapper{position:relative;margin:16px 12.5px 0 20px}#_form_331_ ._form-thank-you{position:relative;left:0;right:0;text-align:center;font-size:18px}#_form_331_ ._form-pc-confirmation ._submit{margin-top:16px}@media (min-width:320px) and (max-width:667px){#_form_331_._inline-form._inline-style ._inline-style._button-wrapper{margin-top:20px !important;margin-left:0 !important}}#_form_331_ .iti{width:100%}#_form_331_ .iti.iti--allow-dropdown.iti--separate-dial-code{width:100%}#_form_331_ .iti input{width:100%;border:#979797 1px solid;border-radius:4px}#_form_331_ .iti--separate-dial-code .iti__selected-flag{background-color:#FFFFFF;border-radius:4px}#_form_331_ .iti--separate-dial-code .iti__selected-flag:hover{background-color:rgba(0, 0, 0, 0.05)}#_form_331_ .iti__country-list{border-radius:4px;margin-top:4px;min-width:460px}#_form_331_ .iti__country-list--dropup{margin-bottom:4px}#_form_331_ .phone-error-hidden{display:none}#_form_331_ .phone-error{color:#E40E49}#_form_331_ .phone-input-error{border:1px solid #E40E49 !important}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field fieldset{margin:0;margin-bottom:1.1428571429em;border:none;padding:0}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field fieldset:last-child{margin-bottom:0}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field legend{margin-bottom:1.1428571429em}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field label{display:flex;align-items:flex-start;justify-content:flex-start;margin-bottom:0.8571428571em}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field label:last-child{margin-bottom:0}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field input{margin:0;margin-right:8px}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-label{display:block;font-weight:400;margin-top:-4px}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-label-with-description{display:block;font-weight:700;margin-top:-4px}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field ._form-checkbox-option-description{margin:0;font-size:0.8571428571em}#_form_331_._inline-form ._form-content ._form-list-subscriptions-field ._form-subscriptions-unsubscribe-all-description{line-height:normal;margin-top:-2px}\n#_form_331_ ._submit{width:100%;font-family:\"Source Sans Pro\", Sans-serif !important;font-size:18px !important;font-weight:500 !important}#_form_331_ ._submit:hover{background-color:#04937E !important}#_form_331_ input#email{padding:3px 12px;background-color:#ffffff;border-radius:2px}#_form_331_._form{margin-top:-5px}#_form_331_ ._error._below{position:relative !important}#_form_331_ ._error._above{position:absolute !important}@media (min-width:320px) and (max-width:667px){#_form_331_ ._form_element{margin:0 0 0px}}<\/style>\n<form method=\"POST\" action=\"https:\/\/deandelafuenteromero.activehosted.com\/proc.php\" id=\"_form_331_\" class=\"_form _form_331 _inline-form  _dark\" novalidate data-styles-version=\"5\">\n  <input type=\"hidden\" name=\"u\" value=\"331\" \/>\n  <input type=\"hidden\" name=\"f\" value=\"331\" \/>\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=\"789ef8b4693eba56cf9cd6622eca7a0e\" \/>\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=\"Tu email...\" required\/>\n      <\/div>\n    <\/div>\n    <div class=\"_form_element _x87696446 _full_width \" >\n      <fieldset class=\"_form-fieldset\">\n        <div class=\"_row\">\n          <legend for=\"field[15][]\" class=\"_form-label\">\n          <\/legend>\n        <\/div>\n        <input data-autofill=\"false\" type=\"hidden\" id=\"field[15][]\" name=\"field[15][]\" value=\"~|\">\n        <div class=\"_row _checkbox-radio\">\n          <input id=\"field_15He le\u00eddo y acepto la pol\u00edtica de privacidad\" type=\"checkbox\" name=\"field[15][]\"\n          value=\"He le\u00eddo y acepto la pol\u00edtica de privacidad\"                                                                                 required                                >\n          <span>\n            <label for=\"field_15He le\u00eddo y acepto la pol\u00edtica de privacidad\">\n              He le\u00eddo y acepto la pol\u00edtica de privacidad<span class=\"field-required\">\n              *\n            <\/span>\n          <\/label>\n        <\/span>\n      <\/div>\n    <\/fieldset>\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_331_submit\" class=\"_submit\" type=\"submit\">\n      Ap\u00fantate aqu\u00ed\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 = {\"15\":\"poltica_privacidad\",\"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_331_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_331_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(\"331\", \"Lo sentimos, ocurri\u00f3 un error con el env\u00edo. Acorta tus respuestas y vuelve a intentarlo.\");\n            } else {\n                _show_error(\"331\", \"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_331_');\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    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_331_submit');\n            submitButton.disabled = true;\n            submitButton.classList.add('processing');\n                    var serialized = _form_serialize(document.getElementById('_form_331_')).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(\"331\", \"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><style>\/* Texto junto al checkbox: blanco y en l\u00ednea *\/\n._form_299 ._checkbox-radio label {\n  display: inline !important;\n  margin-left: 8px !important;\n}\n\n\/* Color blanco del texto \"Verifica que eres un humano\" *\/\n._form_299 label[for=\"ls\"],\n._form_299 ._form_element label._form-label {\n  color: #ffffff !important;\n  display: inline-block;\n  font-weight: 400 !important;\n  margin-left: 8px;\n}\n\n\/* Placeholder del campo de email *\/\n#_form_299_ #email::placeholder {\n  color: #002132 !important;\n}\n\n\/* Altura del campo de email reducida *\/\n#_form_299_ #email {\n  padding: 8px 12px !important;\n  height: 40px !important;\n  font-size: 14px !important;\n  line-height: 1.2 !important;\n  margin-bottom: 16px !important;\n}\n\nlabel {\n    display: inline;\n}<\/style><\/div><\/div><\/span><\/p>\n<h2>Herramientas relacionadas con el contenido<\/h2>\n<p>&nbsp;<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-15624\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-writing.png\" alt=\"pre post seo writing\" width=\"1091\" height=\"553\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-writing.png 1091w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-writing-300x152.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-writing-1024x519.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-writing-768x389.png 768w\" sizes=\"(max-width: 1091px) 100vw, 1091px\" \/><\/p>\n<p>Como ves en la imagen, dispones de 24 herramientas relacionadas con el contenido. La m\u00e1s empleada por los usuarios (y que tiene incluso un acceso directo en el men\u00fa principal) es su <strong>detector de plagio<\/strong>.<\/p>\n<p>En la versi\u00f3n gratuita puedes comprobar textos de hasta 1.000 palabras, que pueden ser 1.500 si te registras. Si quieres analizar m\u00e1s, tendr\u00e1s que acceder a un plan de pago.<\/p>\n<p>&nbsp;<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-15625\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-plagio.png\" alt=\"pre post seo plagio\" width=\"1490\" height=\"561\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-plagio.png 1490w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-plagio-300x113.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-plagio-1024x386.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-plagio-768x289.png 768w\" sizes=\"(max-width: 1490px) 100vw, 1490px\" \/><\/p>\n<p>Como ves en la imagen, adem\u00e1s de indicarte el porcentaje de plagio que tiene un texto te proporciona otras tres opciones: comprobar la gram\u00e1tica, eliminar el plagio mediante una herramienta de parafraseo y descargar los resultados en un archivo PDF.<\/p>\n<p>En el caso de que tu contenido contenga plagio aparecer\u00e1n las URLs en las que se encuentra ese mismo texto. En las opciones puedes excluir URLs para que la herramienta no las tenga en cuenta.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15626\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-text-comparer.png\" alt=\"prepostseo text comparer\" width=\"1106\" height=\"849\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-text-comparer.png 1106w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-text-comparer-300x230.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-text-comparer-1024x786.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-text-comparer-768x590.png 768w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-text-comparer-370x285.png 370w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-text-comparer-260x200.png 260w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-text-comparer-87x67.png 87w\" sizes=\"(max-width: 1106px) 100vw, 1106px\" \/><\/p>\n<p>Otra herramienta para el plagio es el <strong>comparador de textos<\/strong>, donde puedes comparar textos que est\u00e9n en documentos o en una URL o incluso copiarlo y pegarlo directamente, y el <strong>Diff Checker<\/strong>, que funciona de forma muy similar.<\/p>\n<div class=\"su-note\"  style=\"border-color:#a9aaad;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#c3c4c7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">Uno de los mayores valores de Pre Post SEO son sus herramientas antiplagio<\/div><\/div>\n<p>Cuentas tambi\u00e9n con el &#8220;Re-escritor de art\u00edculos&#8221;, es decir, <strong>un spinner<\/strong> en el que puedes copiar y pegar un texto para obtener otro derivado que puedas utilizar sin crear contenido duplicado.<\/p>\n<p>Sin embargo, <strong>no est\u00e1 demasiado perfeccionado<\/strong> y seguramente tendr\u00e1s que hacer retoques manuales para conseguir un texto v\u00e1lido. A fin de cuentas, es algo que tienes que hacer igualmente al utilizar cualquier spinner gratuito.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15628\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-re-writer-articles.png\" alt=\"pre post seo re-writer articles\" width=\"1464\" height=\"739\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-re-writer-articles.png 1464w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-re-writer-articles-300x151.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-re-writer-articles-1024x517.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-re-writer-articles-768x388.png 768w\" sizes=\"(max-width: 1464px) 100vw, 1464px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>A continuaci\u00f3n encontrar\u00e1s <strong>un comparador de webs<\/strong> en las que comprobar qu\u00e9 porcentaje de similitudes tienen dos p\u00e1ginas: title, metadescription, keywords, texto&#8230;<\/p>\n<p>Puede ser \u00fatil para ver c\u00f3mo est\u00e1n trabajando los competidores determinados aspectos de sus sitios webs en comparaci\u00f3n con el tuyo o incluso para comprobar si alguien est\u00e1 replicando estos detalles en sus p\u00e1ginas.<\/p>\n<div class=\"su-note\"  style=\"border-color:#a9aaad;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#c3c4c7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">Una opci\u00f3n interesante si est\u00e1s empezando en el SEO es el <strong>comprobador de URLs<\/strong> ya que te dir\u00e1 si la estructura y forma de tus URLs son amigables en cuanto al posicionamiento.<\/div><\/div>\n<p>Es decir, comprobar\u00e1 que tus URLs no contengan n\u00fameros sin sentido, caracteres sueltos, etc&#8230; que la hagan ilegible ante Google y dif\u00edcil de recordar para los usuarios.<\/p>\n<p>Cuando tienes experiencia sabes muy bien qu\u00e9 estructura deben tener las URLs pero al principio es posible que cueste m\u00e1s saber hasta qu\u00e9 punto una URL es m\u00e1s o menos friendly.<\/p>\n<p>Una funci\u00f3n curiosa es el <strong>generador de may\u00fasculas<\/strong>, que en realidad sirve para cambiar el formato de un contenido, ya sean un par de palabras, frases o p\u00e1rrafos enteros.<\/p>\n<p>Introduce tu contenido y convi\u00e9rtelo en may\u00fasculas. Si lo introduces en may\u00fasculas, podr\u00e1s convertirlo a min\u00fasculas.<\/p>\n<p>Por supuesto, tampoco pod\u00eda faltar un <strong>Contador de Palabras<\/strong> que incluye el tiempo de lectura, y un <strong>comparador del ratio de c\u00f3digo y texto que tiene una web<\/strong>.<\/p>\n<p>De esta forma podr\u00e1s saber si quiz\u00e1 est\u00e1s a\u00f1adiendo demasiado c\u00f3digo a tu p\u00e1gina que puede estar perjudicando a la velocidad de carga, por ejemplo.<\/p>\n<p>Otra funci\u00f3n curiosa es el <strong>ratio de keywords por el n\u00famero de total de palabras del contenido<\/strong>, ya que no te pide que indiques cu\u00e1l es la keyword del texto por lo que se supone que la detecta.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15629\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-ratio-keywords.png\" alt=\"prepostseo ratio keywords\" width=\"1121\" height=\"197\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-ratio-keywords.png 1121w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-ratio-keywords-300x53.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-ratio-keywords-1024x180.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-ratio-keywords-768x135.png 768w\" sizes=\"(max-width: 1121px) 100vw, 1121px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Otra herramienta interesante es el<strong> comprobador de legibilidad<\/strong> ya que proporciona bastantes datos acerca de tu contenido como el total de palabras una vez eliminas las <em>stop words,<\/em> el n\u00famero de palabras \u00fanicas (garant\u00eda de riqueza sem\u00e1ntica) o la media de palabras por frase.<\/p>\n<p>Adem\u00e1s, cuenta con un acceso directo al <strong>comprobador de gram\u00e1tica<\/strong> que te dir\u00e1 los errores gramaticales que tenga ese mismo texto y las erratas de escritura.<\/p>\n<p>De esta forma, puedes optimizar el contenido combinando estas dos funciones de PrePostSEO.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15630\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-legibilidad.png\" alt=\"prepostseo legibilidad\" width=\"1092\" height=\"628\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-legibilidad.png 1092w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-legibilidad-300x173.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-legibilidad-1024x589.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-legibilidad-768x442.png 768w\" sizes=\"(max-width: 1092px) 100vw, 1092px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>PrePostSEO cuenta con un <strong>combinador de palabras<\/strong> que puedes utilizar para tratar de crear keywords long tail con las que posicionar m\u00e1s r\u00e1pido.<\/p>\n<p>Tambi\u00e9n podr\u00e1s usarlo para crear tus propios textos spinner combinando sin\u00f3nimos y d\u00e1ndoles el formato requerido para despu\u00e9s generar contenidos derivados.<\/p>\n<p>El <strong>verificador de backlinks<\/strong> sirve para comprobar si hay backlinks hacia una URL desde una lista de webpages que le proporciones.\u00a0No solo te dir\u00e1 si existe o no sino si es nofollow y qu\u00e9 anchor text utiliza.<\/p>\n<p>Encontrar\u00e1s tambi\u00e9n un <strong>comprobador de ortograf\u00eda<\/strong> donde t\u00fa pegas el contenido, indicas el idioma y la herramienta te dir\u00e1 qu\u00e9 palabras tienes que corregir remarc\u00e1ndolas e indic\u00e1ndote la forma correcta.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15631\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-gramatica.png\" alt=\"prepost seo gramatica\" width=\"1122\" height=\"751\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-gramatica.png 1122w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-gramatica-300x201.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-gramatica-1024x685.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-gramatica-768x514.png 768w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-gramatica-270x180.png 270w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-gramatica-770x515.png 770w\" sizes=\"(max-width: 1122px) 100vw, 1122px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Tambi\u00e9n hay funciones enfocadas al contenido que no es de texto como la <strong>b\u00fasqueda inversa de im\u00e1genes<\/strong>. Subes una imagen a la herramienta y \u00e9sta te dir\u00e1 en qu\u00e9 URLs aparece para que le puedas dar un contexto.<\/p>\n<p>Y terminando ya con las herramientas de contenido, encontramos una de curiosa pero que puede resultarte \u00fatil: <strong>\u00bfCu\u00e1l es mi IP?<\/strong> Nada m\u00e1s acceder esta funci\u00f3n te dir\u00e1 qu\u00e9 n\u00famero de IP se corresponde con su sesi\u00f3n de navegaci\u00f3n actual.<\/p>\n<h2>Herramientas relacionadas con el dominio<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15632\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-dominios.png\" alt=\"prepostseo dominios\" width=\"1073\" height=\"503\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-dominios.png 1073w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-dominios-300x141.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-dominios-1024x480.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-dominios-768x360.png 768w\" sizes=\"(max-width: 1073px) 100vw, 1073px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Ahora vamos a analizar las funciones de PrePostSEO relacionadas con la gesti\u00f3n de dominios. Como ves, se trata de herramientas un poco m\u00e1s t\u00e9cnicas, aunque f\u00e1ciles de usar y que te van a permitir detectar errores en tu web y obtener informaci\u00f3n \u00fatil.<\/p>\n<p>Empezamos por el <strong>comprobador de DA y PA<\/strong> (Autoridad de dominio y autoridad de p\u00e1gina, m\u00e9tricas de MOZ) que te dir\u00e1 cu\u00e1les son y adem\u00e1s, te ofrece el link directo para que compruebes cu\u00e1ntas p\u00e1ginas est\u00e1n indexadas en Google bajo ese dominio.<\/p>\n<p>Puedes hacerlo con webs en bulk y descargarlo en un excel, por lo que es una buena forma de analizar r\u00e1pidamente p\u00e1ginas en las que pudieras estar considerando conseguir un backlink.<\/p>\n<p>Y con un objetivo parecido tienes el <strong>comparador del ranking de Alexa<\/strong>. Puedes usarlo para comparar tu puntuaci\u00f3n con la de tus competidores o para ver las m\u00e9tricas de las posibles webs en las que quieres colocar un enlace.<\/p>\n<p>El <strong>generador de sitemaps XML<\/strong> es muy \u00fatil ya que en apenas unos segundos crea para ti el sitemap en formato XML, HTML y texto para que lo puedas subir a la carpeta ra\u00edz de tu dominio y enviarlo despu\u00e9s a Google a trav\u00e9s de Search Console.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15633\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-sitemap.png\" alt=\"prepostseo sitemap\" width=\"1052\" height=\"493\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-sitemap.png 1052w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-sitemap-300x141.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-sitemap-1024x480.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-sitemap-768x360.png 768w\" sizes=\"(max-width: 1052px) 100vw, 1052px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>El <strong>buscador de blogs<\/strong> tambi\u00e9n est\u00e1 relacionado con el link building ya que, colocando una keyword, te permite encontrar foros, blogs, webs, cuentas de redes sociales, etc\u00e9tera donde aparezca esa palabra clave.<\/p>\n<p>Seg\u00fan la plataforma que escojas puedes incluir footprints que segmentar\u00e1n la b\u00fasqueda para hacerla m\u00e1s concreta de forma que puedes encontrar blogs que acepten post de invitados o incluso webs gubernamentales o educativas.<\/p>\n<p>El <strong>extractor de URLs<\/strong> te ofrece un listado con todas las URLs de una web, tanto internas como externas.<\/p>\n<p>Con el <strong>comprobador de la edad de un dominio<\/strong> podr\u00e1s analizar hasta 10 webs al mismo tiempo para conocer su antig\u00fcedad con una exactitud que incluye d\u00eda, mes, a\u00f1o, hora, minuto y segundo. Si est\u00e1s pensando en comprar dominios caducados esta opci\u00f3n puede ser de utilidad.<\/p>\n<p>Y muy relacionado con este punto est\u00e1 el <strong>comprobador de IP inversa<\/strong>, es decir, t\u00fa le dices la IP a la herramienta y te dice cu\u00e1ntos dominios hay registrado bajo la misma. Esto te puede servir para tratar de detectar las webs de una misma empresa, por ejemplo.<\/p>\n<p>Su <strong>comprobador de malware<\/strong> es eficaz en cuando a que conecta con Informe de Transparencia de Google, en concreto con el apartado Estado del sitio seg\u00fan Navegaci\u00f3n segura por lo que la informaci\u00f3n es fiable.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15634\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-malware.png\" alt=\"prepostseo malware\" width=\"1631\" height=\"778\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-malware.png 1631w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-malware-300x143.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-malware-1024x488.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-malware-768x366.png 768w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-malware-1536x733.png 1536w\" sizes=\"(max-width: 1631px) 100vw, 1631px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>El <strong>creador de backlinks<\/strong> de PrePostSEO no es una de las herramientas m\u00e1s eficaces ya que lo que hace es generar enlaces &#8220;trampa&#8221; que si bien no son da\u00f1inos per se, tampoco van a suponer ning\u00fan beneficio en cuanto al posicionamiento de tu web.<\/p>\n<p>Es mucho m\u00e1s interesante el <strong>detector de enlaces rotos<\/strong> para saber qu\u00e9 URL est\u00e1n devolviendo un error 404. Cuando lo utilices no te asustes al ver la lista ya que lo que hace PrePostSEO es mostrar todas las URL de tu web para indicar cu\u00e1les funcionan y cu\u00e1les no.<\/p>\n<p>\u00a1Ojo! Este apartado finaliza con un <strong>comprobador del pagerank de Google<\/strong> que en realidad es una m\u00e9trica que generan desde PrePostSEO utilizando los resultados de b\u00fasqueda de Google y la puntuaci\u00f3n de Moz.<\/p>\n<h2>Herramientas relacionadas con la gesti\u00f3n de la web<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15635\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-web.png\" alt=\"prepost seo web\" width=\"1075\" height=\"702\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-web.png 1075w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-web-300x196.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-web-1024x669.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepost-seo-web-768x502.png 768w\" sizes=\"(max-width: 1075px) 100vw, 1075px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>De nuevo estamos ante un apartado de herramientas con car\u00e1cter un poco m\u00e1s t\u00e9cnico. Quiz\u00e1 sea probable que no sepas a qu\u00e9 se refieren muchas de las siglas que ves en la imagen de aqu\u00ed arriba as\u00ed que te vamos a explicar en qu\u00e9 consiste cada una de estas funciones.<\/p>\n<p>Encontramos en primer lugar<strong> dos opciones relacionadas con los DNS de tu web<\/strong>: una de ellas te permitir\u00e1 saber cu\u00e1les son y la otra en qu\u00e9 estado de propagaci\u00f3n se encuentran en el caso de que acabes de comprar un dominio.<\/p>\n<p>Muy pr\u00e1ctico es el <strong>buscador de localizaci\u00f3n de IPs<\/strong> ya que te permite saber de d\u00f3nde es una IP concreta. Puedes analizar hasta 50 al mismo tiempo, lo cual te sirve en caso de que alguien haya intentado acceder a tu panel de administraci\u00f3n o si est\u00e1s recibiendo tr\u00e1fico que te est\u00e1 perjudicando.<\/p>\n<p>Si manejas varias p\u00e1ginas webs (por ejemplo, webs de nicho) te puede interesar el <strong>comprobador de indexaci\u00f3n en Google<\/strong> donde puedes incluir hasta 1.000 URL para ver si ya est\u00e1n indexadas.<\/p>\n<p>Tambi\u00e9n tienes una herramienta que <strong>transforma emoticonos y caracteres especiales en c\u00f3digos HTML<\/strong> para que los puedas insertar en cualquier p\u00e1gina web. De la misma forma, cuentas con un <strong>generador de favicon<\/strong>, el peque\u00f1o icono de la web que aparece en la pesta\u00f1a.<\/p>\n<p>Y aqu\u00ed llegamos a una herramienta muy interesante a la hora de optimizar una p\u00e1gina web: un minificador de HTML, CSS, JavaScritp y JSON. Solo tienes que pegar el c\u00f3digo y te lo devuelve minificado para que lo coloques en la web. Eso s\u00ed, tienes que saber muy bien lo que est\u00e1s haciendo.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15636\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-minificador.png\" alt=\"prepostseo minificador\" width=\"1108\" height=\"680\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-minificador.png 1108w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-minificador-300x184.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-minificador-1024x628.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/prepostseo-minificador-768x471.png 768w\" sizes=\"(max-width: 1108px) 100vw, 1108px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>A continuaci\u00f3n tienes un <strong>conversor de RGB a HEX,\u00a0<\/strong>que te permite obtener los c\u00f3digos de colores en ambos formatos o pasarlos de uno a otro seg\u00fan el lenguaje de programaci\u00f3n que est\u00e9s utilizando. Tambi\u00e9n puedes crear tu propio color usando las barritas de rojo, azul y verde y obtener los c\u00f3digos al mismo tiempo.<\/p>\n<p>Si tienes varias webs (por ejemplo, si eres nichero) cuentas con un <strong>comprobador de estados de servidor<\/strong>. Puedes poner hasta diez dominios para comprobar si todo est\u00e1 en orden, algo pr\u00e1ctico si tus webs est\u00e1n alojadas en distintos hostings.<\/p>\n<p>El<strong> simulador de ara\u00f1as<\/strong> combina varias opciones que ya hemos visto antes: replica lo que las ara\u00f1as de Google van a encontrar al acceder a un dominio: title, metadescription, enlaces internos con anchor text&#8230; lo que puedes utilizar para revisar tu web pero tambi\u00e9n las de tus competidores.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15637\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-html-viewer.png\" alt=\"pre post seo html viewer\" width=\"1074\" height=\"302\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-html-viewer.png 1074w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-html-viewer-300x84.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-html-viewer-1024x288.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-html-viewer-768x216.png 768w\" sizes=\"(max-width: 1074px) 100vw, 1074px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Y muy interesante es tambi\u00e9n el <strong>visualizador de HTML<\/strong> que te ense\u00f1a el c\u00f3digo HTML de cualquier web, de forma que puedes ver c\u00f3mo se ha creado su estructura o, en el caso de que sea la tuya, detectar alg\u00fan posible error.<\/p>\n<p>Encontramos tambi\u00e9n una funci\u00f3n que te permitir\u00e1<strong> recortar con facilidad cualquier imagen que subas a la herramienta<\/strong>, ya sea de forma libre como d\u00e1ndole un formato concreto para redes sociales.<\/p>\n<p>Es una opci\u00f3n muy pr\u00e1ctica si quieres adaptar una imagen para Instagram, ya sea el feed o las stories, para Facebook, para una miniatura de YouTube&#8230;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-15638\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-crop-images.png\" alt=\"pre post seo crop images\" width=\"1006\" height=\"358\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-crop-images.png 1006w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-crop-images-300x107.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2023\/03\/pre-post-seo-crop-images-768x273.png 768w\" sizes=\"(max-width: 1006px) 100vw, 1006px\" \/><\/p>\n<p>&nbsp;<\/p>\n<h2>Herramienta para convertir formatos<\/h2>\n<p>Por \u00faltimo, se encuentra una amplia secci\u00f3n dedicada a la <strong>conversi\u00f3n de formatos de todo tipo<\/strong>, el apartado sin duda m\u00e1s utilizado por los usuarios de PrePostSEO.<\/p>\n<p>Hoy d\u00eda hay tantos formatos diferentes de c\u00f3digos, textos, audio, video, etc\u00e9tera con distintas compatibilidades que no es raro que, en ocasiones, te veas en la necesidad de cambiar el formato de alg\u00fan archivo.<\/p>\n<p>Aqu\u00ed te vas a encontrar con algunas de las conversiones m\u00e1s frecuentes:<\/p>\n<ul>\n<li>Conversiones entre formato decimal, octal, binario, hex&#8230;<\/li>\n<li>Conversiones de formato ASCII<\/li>\n<li>Conversiones de formato .txt a PDF, binario, im\u00e1genes&#8230;<\/li>\n<li>Conversiones de numeraci\u00f3n romana<\/li>\n<\/ul>\n<p>Y no olvidemos el gran n\u00famero de calculadoras que ofrece:<\/p>\n<ul>\n<li>Comisiones de Adsense<\/li>\n<li>Comisiones de PayPal<\/li>\n<li>Call to Click de una keyword<\/li>\n<li>Monedas<\/li>\n<li>Descuentos<\/li>\n<li>Porcentajes<\/li>\n<\/ul>\n<p>Y otras herramientas como <strong>un generador de contrase\u00f1as, un editor de texto, un generador de nombres o un traductor de c\u00f3digo binario<\/strong>.<\/p>\n<h2>\u00bfMerece la pena Pre Post SEO?<\/h2>\n<p>Una vez que hemos terminado este recorrido por Pre Post SEO es posible que hayas llegado a una conclusi\u00f3n: ya existen muchas herramientas, tanto gratuitas como de pago, que hacen las mismas funciones.<\/p>\n<div class=\"su-note\"  style=\"border-color:#a9aaad;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\"><div class=\"su-note-inner su-u-clearfix su-u-trim\" style=\"background-color:#c3c4c7;border-color:#ffffff;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">Y si bien es cierto, la ventaja de Pre Post SEO es, precisamente, tener todas estas herramientas reunidas en una sola plataforma.\u00a0<\/div><\/div>\n<p>Es la <a href=\"https:\/\/www.prepostseo.com\/\" target=\"_blank\" rel=\"noopener\">web ideal<\/a> para tenerla fija en tu <strong>barra de marcadores<\/strong> y recurrir a ella cuando necesites realizar peque\u00f1as acciones como las que acabamos de ver.<\/p>\n<p>Eso s\u00ed, ten en cuenta que <strong>es gratuita y tiene sus limitaciones<\/strong> pero, a\u00fan as\u00ed, te puede ayudar a ahorrar tiempo en algunas tareas y salir de alg\u00fan que otro escollo.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cuando trabajas en una web online a veces necesitas hacer peque\u00f1as tareas aparentemente sencillas pero que te pueden robar m\u00e1s tiempo del que esperabas. Por ejemplo, reducir el peso de una imagen, comprobar si una palabra est\u00e1 bien escrita, crear un favicon&#8230; A veces una b\u00fasqueda r\u00e1pida en Google te mostrar\u00e1 herramientas online que pueden [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":14553,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2],"tags":[],"class_list":["post-284","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutoriales-herramientas-seo"],"acf":[],"_links":{"self":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/284","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/comments?post=284"}],"version-history":[{"count":1,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/284\/revisions"}],"predecessor-version":[{"id":29548,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/284\/revisions\/29548"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/media\/14553"}],"wp:attachment":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/media?parent=284"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/categories?post=284"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/tags?post=284"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}