{"id":21754,"date":"2024-05-09T18:20:03","date_gmt":"2024-05-09T16:20:03","guid":{"rendered":"https:\/\/dinorank.com\/blog\/?p=21754"},"modified":"2026-03-03T12:20:47","modified_gmt":"2026-03-03T11:20:47","slug":"prompts-para-seo","status":"publish","type":"post","link":"https:\/\/dinorank.com\/blog\/mejores-prompts-para-seo\/","title":{"rendered":"\u00bfC\u00f3mo usar ChatGPT para mejorar tu SEO? Los 10 mejores prompts de 2026"},"content":{"rendered":"<div class=\"su-note border=#000000\"  style=\"border-color:#007963;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:#00937D;border-color:#ccffff;color:#ffffff;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;\">Este art\u00edculo ha sido actualizado en el mes de febrero de 2026 y se revisa peri\u00f3dicamente cada 2 meses para a\u00f1adir informaci\u00f3n relevante en funci\u00f3n de las novedades de cada momento.<\/div><\/div>\n<p>Hoy vas a aprender a hacer SEO con ChatGPT. Al menos, voy a darte algunos consejos y prompts que te van a ayudar a mejorar tus contenidos en los rankings de b\u00fasqueda de Google.<\/p>\n<p>Ver\u00e1s, yo<strong> hace tiempo que incorpor\u00e9 la IA a mi suite de utilidades SEO<\/strong>.<\/p>\n<p>Desde herramientas m\u00e1s populares como ChatGPT, a otras m\u00e1s especializadas como <a id=\"CTA-3\" href=\"https:\/\/dinobrain.ai\" target=\"_blank\" rel=\"noopener\">DinoBRAIN<\/a>.<\/p>\n<p><a id=\"CTA-3\" href=\"https:\/\/dinobrain.ai\" target=\"_blank\" rel=\"noopener\"><img fetchpriority=\"high\" decoding=\"async\" class=\"wp-image-24837 size-full aligncenter\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/Crea-textos-que-posicionen-en-Google-con-IA-DinoBRAIN.png\" alt=\"dinobrain\" width=\"1071\" height=\"447\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/Crea-textos-que-posicionen-en-Google-con-IA-DinoBRAIN.png 1071w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/Crea-textos-que-posicionen-en-Google-con-IA-DinoBRAIN-300x125.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/Crea-textos-que-posicionen-en-Google-con-IA-DinoBRAIN-1024x427.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/Crea-textos-que-posicionen-en-Google-con-IA-DinoBRAIN-768x321.png 768w\" sizes=\"(max-width: 1071px) 100vw, 1071px\" \/><\/a><\/p>\n<p>Porque en la actualidad es complicado encontrar a un SEO que no se apoye en la inteligencia artificial para hacer m\u00e1s f\u00e1cil parte de su actividad diaria.<\/p>\n<p>No digo que no haya nadie. Siempre queda alg\u00fan purista que disfruta haciendo su trabajo de la forma m\u00e1s tradicional.<\/p>\n<p>Pero si podemos <strong>optimizar nuestro tiempo como SEO manteniendo la calidad de nuestro trabajo<\/strong>, \u00bfpor qu\u00e9 no usar la IA?<\/p>\n<p>Y precisamente por eso, en este post te quiero hablar especialmente de c\u00f3mo usar ChatGPT en SEO, a trav\u00e9s de un<strong>\u00a0conjunto de prompts que utilizo habitualmente para ejecutar diferentes tareas SEO<\/strong>.<\/p>\n<p>Espero que te resulten tan \u00fatiles como a m\u00ed y te hagan el SEO un poco m\u00e1s f\u00e1cil.<\/p>\n<p>Pero antes, vamos con una peque\u00f1a explicaci\u00f3n sobre lo que es un prompt para ChatGPT.<\/p>\n<h2>\u00bfQu\u00e9 es un prompt?<\/h2>\n<p>Un prompt es el <strong>conjunto de instrucciones<\/strong> que le pasamos a ChatGPT, Copilot o Gemini para hacerle una petici\u00f3n. Es decir, los prompts son el mecanismo que tenemos <strong>para interactuar con estas herramientas de IA conversacionales<\/strong>.<\/p>\n<p>Lo bueno es que, a diferencia de los sistemas inform\u00e1ticos tradicionales donde se suelen emplear comandos en un lenguaje espec\u00edfico para ejecutar cualquier acci\u00f3n, cuando nos comunicamos con los sistemas de inteligencia artificial <strong>utilizamos directamente el lenguaje natural<\/strong>.<\/p>\n<p>Ahora bien, no es lo mismo usar un prompt sencillo que invertir tu tiempo en preparar un buen prompt donde especifiques detalladamente qu\u00e9 es lo que esperas conseguir.<\/p>\n<p>Aunque ChatGPT siempre te va a intentar dar una respuesta correcta, la manera en la que formules tu petici\u00f3n es crucial si quieres <strong>obtener una respuesta de calidad<\/strong>.<\/p>\n<div class=\"su-box su-box-style-default\" id=\"\" style=\"border-color:#00604a;border-radius:4px;max-width:none\"><div class=\"su-box-title\" style=\"background-color:#00937d;color:#ffffff;border-top-left-radius:2px;border-top-right-radius:2px\">\u00bfLos promts son siempre necesarios?<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:2px;border-bottom-right-radius:2px\">Hoy en d\u00eda ya existen herramientas de IA que te permiten hacer ciertas tareas <strong>sin necesidad de perder tiempo probando prompts<\/strong> hasta dar con un resultado aceptable.<\/p>\n<p>Por ejemplo, en lo referente al SEO, <a id=\"CTA-3\" href=\"https:\/\/dinobrain.ai\" target=\"_blank\" rel=\"noopener\">DinoBRAIN es una IA que permite generar contenidos y arquitecturas webs 100% optimizadas para SEO<\/a> en cuesti\u00f3n de minutos, con un solo clic y sin necesidad de usar promts.<\/div><\/div>\n<h2>\u00bfEs posible hacer SEO en ChatGPT?<\/h2>\n<p><strong>La forma de hacer SEO dentro de este modelo generativo de IA es intentar influir en sus respuestas<\/strong>, con el objetivo de que cite nuestra web o simplemente mencione nuestra marca.<\/p>\n<p>\u00bfTe gustar\u00eda saber c\u00f3mo conseguirlo? Entonces te invito a leer este post sobre <a href=\"https:\/\/dinorank.com\/blog\/seo-para-chatgpt-para-posicionar-marca\/\">SEO para ChatGPT<\/a> donde te cuento las principales estrategias que puedes aplicar.<\/p>\n<p>Dicho esto, existe<strong> otra manera de entender el SEO en ChatGPT<\/strong>.<\/p>\n<p>Me refiero a <strong>incorporar esta herramienta como parte de tu estrategia SEO<\/strong> y aprovecharte de toda su potencia para agilizar un buen n\u00famero de tareas habituales.<\/p>\n<p>Y eso es precisamente lo que quiero contarte a continuaci\u00f3n. Qu\u00e9date conmigo y ver\u00e1s c\u00f3mo hacer que tu trabajo como SEO sea m\u00e1s llevadero gracias a ChatGPT.<\/p>\n<h2>Mi Top 10 de prompts de ChatGPT para mejorar el SEO de tu web<\/h2>\n<p>Actualmente no resulta complicado encontrar en Internet prompts bastante elaborados para ejecutar un buen n\u00famero de tareas de lo m\u00e1s diversas.<\/p>\n<p>Muchos de estos conjuntos de instrucciones para ChatGPT son compartidos de manera altruista por sus desarrolladores.<\/p>\n<p>Todos ellos pretenden <strong>hacer m\u00e1s accesible esta nueva tecnolog\u00eda<\/strong> y ayudar a quienes est\u00e1n empezando a utilizarla.<\/p>\n<p><strong>\u2705 En este v\u00eddeo puedes comprobar c\u00f3mo se puede usar para curar contenidos:<\/strong><\/p>\n<p><iframe title=\"Aprende a Curar y optimizar tus Contenidos con ChatGPT \ud83e\udd16 \u270d\ufe0f\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/DpkSmVLG8a8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p>Yo tambi\u00e9n quiero aportar mi granito de arena dentro de la comunidad SEO y, por eso, a continuaci\u00f3n <strong>te traigo los prompts que mejores resultados me ofrecen<\/strong>.<\/p>\n<p>Los he agrupado en tres apartados seg\u00fan la fase de la estrategia SEO en la que se utilicen.<\/p>\n<p>De este modo creo que te resultar\u00e1 m\u00e1s c\u00f3modo localizarlos cuando los necesites.<\/p>\n<p>As\u00ed que no me l\u00edo m\u00e1s y vamos con esta particular selecci\u00f3n de mis 10 mejores prompts para SEO.<\/p>\n<h2>Prompts de ChatGPT para la creaci\u00f3n y optimizaci\u00f3n SEO de contenidos<\/h2>\n<p>Empecemos nuestra colecci\u00f3n de prompts para IA con una secci\u00f3n dedicada a la creaci\u00f3n y mejora de contenidos.<\/p>\n<p>En Internet puedes encontrar multitud de prompts al respecto, desde instrucciones muy simples a comandos realmente elaborados.<\/p>\n<p>En este apartado te muestro los que mejor me han funcionado hasta la fecha.<\/p>\n<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>\n<h3>1. Generaci\u00f3n de la estructura de encabezados de un post<\/h3>\n<p>Para obtener una estructura de encabezados optimizada para SEO, <strong>lo ideal es basarse en las p\u00e1ginas que ya est\u00e1n posicionadas<\/strong>.<\/p>\n<p>Si queremos utilizar la IA para este fin,<strong> la herramienta que decidamos emplear deber\u00eda ser capaz de conectarse a Internet<\/strong> para extraer los resultados de una b\u00fasqueda y analizarlos.<\/p>\n<p>Desde hace un tiempo ChatGPT ofrece esta posibilidad, incluso en su versi\u00f3n gratuita. Otras opciones, como Copilot o Gemini, ya incluyeron la capacidad de conexi\u00f3n en l\u00ednea mucho antes.<\/p>\n<p>As\u00ed que, si utilizas alguna de estas herramientas, el siguiente prompt te puede ser muy \u00fatil para generar los encabezados de tus art\u00edculos:<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en Copywriting. Adem\u00e1s tienes experiencia como [EXPERIENCIA].\r\nEst\u00e1s creando un art\u00edculo sobre la siguiente palabra clave de inter\u00e9s: [KEYWORD].\r\nNecesito que plantees la estructura del art\u00edculo en funci\u00f3n de la intenci\u00f3n de b\u00fasqueda del usuario.\r\nPara ello debes extraer los encabezados de los primeros 10 resultados en Internet para la b\u00fasqueda [KEYWORD], analizarlos y decirme los m\u00e1s relevantes, sin repetir contenido. Reescr\u00edbelos para que no sean iguales a los de mis competidores.\r\nDevuelve un t\u00edtulo principal para el art\u00edculo, una lista de 7 t\u00edtulos de tipo H2 y algunos H3.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Otra alternativa que tambi\u00e9n puede funcionar en caso de que tu herramienta de IA no soporte la conexi\u00f3n a Internet es <strong>crear los encabezados en base a la intenci\u00f3n de b\u00fasqueda<\/strong>.<\/p>\n<p>Aqu\u00ed te dejo el prompt para hacerlo:<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en Copywriting. Adem\u00e1s tienes experiencia como [EXPERIENCIA].\r\nEst\u00e1s creando un art\u00edculo sobre la siguiente palabra clave de inter\u00e9s: [KEYWORD].\r\nNecesito que plantees la estructura del art\u00edculo en funci\u00f3n de la intenci\u00f3n de b\u00fasqueda del usuario.\r\nPor lo tanto, eval\u00faa la intenci\u00f3n de b\u00fasqueda de la palabra clave y prop\u00f3n una estructura coherente.\r\nDevuelve un t\u00edtulo principal para el art\u00edculo, una lista de 7 t\u00edtulos de tipo H2 y algunos H3.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Evidentemente, los resultados no ser\u00e1n tan buenos como los de la primera opci\u00f3n, pero pueden ayudarte igualmente a crear un contenido que sea del agrado de los usuarios.<\/p>\n<p>\u00c9ste ser\u00eda un ejemplo de ejecuci\u00f3n sobre una de la versiones anteriores de ChatGPT, donde todav\u00eda no se inclu\u00eda la navegaci\u00f3n a trav\u00e9s de la Web:<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-21766 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-encabezados.png\" alt=\"Prompt de ChatGPT para SEO: estructura de encabezados de un post\" width=\"1024\" height=\"750\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-encabezados.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-encabezados-300x220.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-encabezados-768x563.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3>2. Creaci\u00f3n de un art\u00edculo optimizado para SEO<\/h3>\n<p>La generaci\u00f3n de contenidos para los art\u00edculos o las p\u00e1ginas de nuestra web es una de las tareas m\u00e1s habituales para las que se utiliza ChatGPT.<\/p>\n<p>Pero d\u00e9jame decirte una cosa. Si alguna vez has contratado un redactor para tus textos SEO, sabr\u00e1s que la calidad de su trabajo depende en buena medida de lo precisas y completas que sean las indicaciones que le facilitas cuando le encargas el trabajo.<\/p>\n<p>Con la inteligencia artificial ocurre lo mismo. No basta con decirle que quieres un texto sobre algo. Adem\u00e1s,<strong> debes detallar c\u00f3mo deseas que lo redacte<\/strong>.<\/p>\n<p>Aqu\u00ed te dejo un prompt que, hasta ahora, me ha dado muy buenos resultados.<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en Copywriting. Adem\u00e1s tienes experiencia como [EXPERIENCIA].\r\nEst\u00e1s trabajando los contenidos de un blog sobre [TEM\u00c1TICA].\r\nVas a crear un art\u00edculo largo, de unas 1000 palabras, sobre la siguiente palabra clave principal: [KEYWORD].\r\nEl t\u00edtulo del art\u00edculo ser\u00e1 el siguiente: [T\u00cdTULO]\r\nY la estructura de encabezados debe ser: [ENCABEZADOS]\r\nCada apartado debe contener de 2 a 4 p\u00e1rrafos.\r\nEl art\u00edculo debe satisfacer la siguiente intenci\u00f3n de b\u00fasqueda: [INTENCI\u00d3N-B\u00daSQUEDA]\r\nE incluir de manera natural estas palabras clave relacionadas con la principal: [LISTA-KEYWORDS]\r\nEl art\u00edculo debe tener el siguiente tono: [TONO].\r\nY estar en idioma [IDIOMA] de [PA\u00cdS].\r\nNo te inventes informaci\u00f3n y devuelve el resultado en formato HTML.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Si analizas con detenimiento este prompt, ver\u00e1s que <strong>necesitas un trabajo previo antes de ejecutarlo en ChatGPT<\/strong>.<\/p>\n<p>En concreto, hay partes que debes perfilar mediante algunos de los prompts de este art\u00edculo. De este modo:<\/p>\n<ul>\n<li>Con el prompt de ideas de palabras clave completaremos la variable [KEYWORD] y [LISTA-KEYWORDS].<\/li>\n<li>El prompt de los encabezados nos permitir\u00e1 rellenar las secciones [T\u00cdTULO] y [ENCABEZADOS].<\/li>\n<li>Gracias al prompt para profundizar en la intenci\u00f3n de b\u00fasqueda podremos indicar la informaci\u00f3n sobre [INTENCI\u00d3N-B\u00daSQUEDA].<\/li>\n<\/ul>\n<p>As\u00ed, el resultado de nuestra ejecuci\u00f3n quedar\u00eda del siguiente modo:<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-21762 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-creacion-contenido.png\" alt=\"Prompt de ChatGPT para SEO: creaci\u00f3n de un art\u00edculo optimizado para SEO\" width=\"1024\" height=\"816\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-creacion-contenido.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-creacion-contenido-300x239.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-creacion-contenido-768x612.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Como has visto, <a href=\"https:\/\/dinorank.com\/blog\/textos-optimizados-para-seo\/\">crear un post optimizado para SEO<\/a> con ChatGPT es posible, <strong>pero no es ni mucho menos f\u00e1cil ni inmediato<\/strong>. Por eso, si quieres aprovechar toda la potencia de la <a href=\"https:\/\/dinorank.com\/blog\/herramientas-inteligencia-artificial-para-escribir-textos\/\">IA para la creaci\u00f3n de contenidos<\/a>, te recomiendo echar un vistazo a otras alternativas m\u00e1s especializadas.<\/p>\n<p>Y, en este contexto, <a id=\"CTA-3\" href=\"https:\/\/dinorank.com\/seccion-dinoBrain\/\" target=\"_blank\" rel=\"noopener\"><strong>DinoBRAIN <\/strong>es a d\u00eda de hoy la mejor herramienta que conozco para crear textos SEO optimizados<\/a>, ya que se trata de una IA entrenada por especialistas en posicionamiento web para obtener contenidos de calidad seg\u00fan los par\u00e1metros que Google est\u00e1 valorando en la actualidad.<\/p>\n<p><a href=\"https:\/\/dinorank.com\/seccion-dinoBrain\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-24924 size-large\" title=\"Descubre DinoBRAIN, la IA de DinoRANK\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/Crea-textos-que-posicionen-en-Google-con-IA-DinoBRAIN.png\" alt=\"Descubre DinoBRAIN, la IA de DinoRANK\" width=\"1024\" height=\"427\" \/><\/a><\/p>\n<p>Con tan s\u00f3lo indicar tu palabra clave principal y pulsar un bot\u00f3n, DinoBRAIN te generar\u00e1 en tan solo 1 o 2 minutos un post largo, original, de calidad y <strong>totalmente listo para posicionar.<\/strong><\/p>\n<p>Aspectos como el t\u00edtulo del art\u00edculo, sus encabezados, la longitud del contenido o la amplitud sem\u00e1ntica del texto se deciden gracias a un an\u00e1lisis interno de prominencia sem\u00e1ntica con los primeros resultados de las SERPs.<\/p>\n<p>Y todo ello, como te digo, sin que t\u00fa tengas que introducir ni un solo promt.<\/p>\n<p>Aqu\u00ed tienes alguna opini\u00f3n de gente que ya est\u00e1 usando DinoBRAIN para crear los contenidos de su web:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-24973\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/DINORANK-Testimonio-DinoBRAIN-Contenidos-8.png\" alt=\"\" width=\"756\" height=\"1094\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/DINORANK-Testimonio-DinoBRAIN-Contenidos-8.png 756w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/DINORANK-Testimonio-DinoBRAIN-Contenidos-8-207x300.png 207w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/DINORANK-Testimonio-DinoBRAIN-Contenidos-8-708x1024.png 708w\" sizes=\"(max-width: 756px) 100vw, 756px\" \/> <img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-24974\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/DINORANK-Testimonio-DinoBRAIN-Contenidos-9.png\" alt=\"\" width=\"690\" height=\"444\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/DINORANK-Testimonio-DinoBRAIN-Contenidos-9.png 690w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/DINORANK-Testimonio-DinoBRAIN-Contenidos-9-300x193.png 300w\" sizes=\"(max-width: 690px) 100vw, 690px\" \/><\/p>\n<p>Si quieres conocer m\u00e1s en detalle c\u00f3mo funciona este m\u00f3dulo de IA de DinoRANK, aqu\u00ed te dejo un video donde puedes ver la herramienta en acci\u00f3n:<\/p>\n<p><iframe title=\"No uses ChatGPT en 2026 para CREAR contenido y MEJORAR tu posicionamiento con la IA\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/rE73TT14b2Y?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<h3>3. Curaci\u00f3n de contenidos con ChatGPT y DinoRANK<\/h3>\n<p>Si en lugar de crear un texto desde cero, quieres optimizar uno ya existente, mi consejo es que lo hagas en<strong> dos fases<\/strong>.<\/p>\n<p><strong>Primero haz un <a id=\"CTA-3\" href=\"https:\/\/dinorank.com\/seccion-wdf\/\" target=\"_blank\" rel=\"noopener\">an\u00e1lisis TF*IDF con DinoRANK<\/a><\/strong>. Esto te permitir\u00e1 conocer los t\u00e9rminos sem\u00e1nticamente relacionados con tu contenido que est\u00e1n utilizando tus competidores y t\u00fa no lo est\u00e1s haciendo.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21765 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-curacion-contenidos-tf-idf-dinorank.png\" alt=\"An\u00e1lisis TF*IDF con DinoRANK para un texto ya existente\" width=\"1024\" height=\"670\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-curacion-contenidos-tf-idf-dinorank.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-curacion-contenidos-tf-idf-dinorank-300x196.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-curacion-contenidos-tf-idf-dinorank-768x503.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Exporta el resultado en formato Excel y qu\u00e9date con la lista de palabras que debes a\u00f1adir.<\/p>\n<p><strong>Despu\u00e9s utiliza el siguiente prompt.<\/strong><\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en Copywriting. Adem\u00e1s tienes experiencia como [EXPERIENCIA].\r\nEst\u00e1s trabajando los contenidos de un blog sobre [TEM\u00c1TICA].\r\nVas a optimizar desde el punto de vista SEO un texto que te voy a indicar.\r\nPara ello te voy a pasar una lista de palabras clave que quiero que introduzcas en dicho texto.\r\nInserta todas las nuevas palabras clave en el texto, a\u00f1adiendo p\u00e1rrafos o frases que complementen el contenido existente sin eliminar ni reemplazar texto.\r\nNo te inventes informaci\u00f3n y devuelve el resultado en formato HTML.\r\nAqu\u00ed tienes el listado de palabras clave a incluir: [KEYWORDS].\r\nRecuerda que es imprescindible introducir todas las palabras clave anteriores en el texto.\r\nY \u00e9ste es el texto a optimizar conforme a las indicaciones que te he comentado: [TEXTO].<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>La variable [KEYWORDS] la debemos completar con el listado de palabras procedente de nuestro an\u00e1lisis TF*IDF y la variable [TEXTO] con el texto a optimizar.<\/p>\n<p>En la siguiente imagen puedes ver el resultado de la ejecuci\u00f3n para nuestro ejemplo.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21764 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-curacion-contenidos.png\" alt=\"Prompt de ChatGPT para SEO: curaci\u00f3n de contenidos\" width=\"1024\" height=\"702\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-curacion-contenidos.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-curacion-contenidos-300x206.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-curacion-contenidos-768x527.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>No obstante, tengo que avisarte de una cosa. Aunque <strong>este prompt me ha funcionado muy bien en ChatGPT Plus, usando el modelo GPT-5.2 Thinking<\/strong>, cuando empleo la versi\u00f3n gratuita, que cuenta con un modelo GPT m\u00e1s limitado, los resultados no son tan buenos.<\/p>\n<p>En esos casos, lo que hago es<strong> iterar las veces que sea necesario<\/strong>. Es decir, le vuelvo a pedir a ChatGPT que optimice el contenido, utilizando el mismo prompt pero cambiando la variable [TEXTO] por el texto que me ha proporcionado en la ejecuci\u00f3n anterior y eliminado de [KEYWORDS] los t\u00e9rminos que ya ha incluido en ese resultado.<\/p>\n<h3>4. Curaci\u00f3n de contenidos con DinoRANK (aunque ayud\u00e1ndote de ChatGPT)<\/h3>\n<p>\u00c9sta, pese a que en un principio te pueda parecer a priori una forma id\u00e9ntica a la anterior, es alternativa. De hecho, puedes probar ambas y quedarte con la que mejores resultados te ofrezca.<\/p>\n<p>En este caso, te propongo usar el <a href=\"https:\/\/dinocurator.com\/\" target=\"_blank\" rel=\"noopener\">plugin Dinocurator para WordPress<\/a>, que es totalmente gratuito y con el cual vas a poder mejorar tus contenidos a nivel de SEO.<\/p>\n<p>Usarlo es tan f\u00e1cil como darle al play a este v\u00eddeo, donde te lo explicamos con todo lujo de detalles:<\/p>\n<p><iframe title=\"Tutorial de Dino Plugin Curator \ud83e\udde0 \ud83d\ude80 Aprende a usarlo como un PRO\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/qD3sni6NHgA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p>Si has visto este videotutorial, ahora ya sabr\u00e1s qu\u00e9 palabras clave de oportunidad te est\u00e1n faltando en tu contenido.<\/p>\n<p><strong>Con la Inteligencia Artificial de DinoBRAIN podr\u00e1s generar ese trozo de contenido<\/strong> (H2, H3,&#8230;) que le falta a tu texto y colocarlo donde creas conveniente que venga bien seg\u00fan el contexto del mismo.<\/p>\n<p>Y ahora es donde podr\u00eda entrar en juego ChatGPT: con este contenido, si hay alg\u00fan concepto del que piensas que puedes ampliar m\u00e1s la informaci\u00f3n, ped\u00edrselo a GPT y as\u00ed hacerlo a\u00fan m\u00e1s completo y aportar m\u00e1s valor a tu usuario.<\/p>\n<p><span style=\"font-weight: 400;\"><div id=\"brxe-21cdd4\" class=\"brxe-block p-2 gap-15\"><div id=\"brxe-99844c\" class=\"brxe-text-basic h2\">\u00bfPiensas que el SEO es dif\u00edcil?<\/div><div id=\"brxe-48de4e\" class=\"brxe-text-basic\"><strong>No siempre.<br><\/strong><br>El <strong>SEO de contenidos<\/strong> es l\u00f3gico, intuitivo y sobre todo f\u00e1cil de aplicar. Y adem\u00e1s es una de las pocas vertientes del SEO capaz de traer resultados (en tr\u00e1fico) a <strong>corto plazo<\/strong>.\n<br><br><strong>Optimiza tus contenidos en pocos minutos para que aparezcan en m\u00e1s b\u00fasquedas<\/strong> y consigue m\u00e1s tr\u00e1fico con <strong>DinoCurator<\/strong>, nuestro plugin gratuito para WordPress.<\/div><a id=\"brxe-tfoulp\" class=\"brxe-button bricks-button bricks-background-primary\" href=\"https:\/\/dinocurator.com\/\" target=\"_blank\" rel=\"noopener\">Desc\u00fabrelo y desc\u00e1rgalo GRATIS<\/a><\/div><\/span><\/p>\n<h2>Prompts SEO para el Keyword Research<\/h2>\n<p>La investigaci\u00f3n de palabras clave es una de mis fases favoritas dentro del posicionamiento web y tambi\u00e9n una de las actividades donde m\u00e1s <strong>utilizo ChatGPT para agilizar los procesos<\/strong>.<\/p>\n<p>El keyword research mezcla tareas bastante mec\u00e1nicas con otras donde se requiere un sentido m\u00e1s anal\u00edtico e imaginativo.<\/p>\n<p>Y es precisamente en esta segunda parte donde ChatGPT nos puede resultar de mayor utilidad. Especialmente cuando nos quedamos sin ideas y necesitamos una visi\u00f3n externa que nos saque de nuestro bloqueo mental.<\/p>\n<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>\n<h3>4. Ideas de palabras clave e intenci\u00f3n de b\u00fasqueda<\/h3>\n<p>En el momento de planificar la estrategia SEO para todo un sitio web necesitamos <strong>conocer un listado de las palabras clave iniciales<\/strong> de las que partir.<\/p>\n<p>En ocasiones, si conoces bien la tem\u00e1tica, puede ser un proceso bastante sencillo e intuitivo. Pero otras veces, te puedes atascar durante horas.<\/p>\n<p>ChatGPT es un gran aliado para esta tarea. En unos segundos puedes tener un buen conjunto de keywords sobre las que profundizar.<\/p>\n<p>Adem\u00e1s, puedes <strong>aprovechar la petici\u00f3n para solicitarle alg\u00fan an\u00e1lisis preliminar<\/strong>. Por ejemplo, que te indique la intenci\u00f3n de b\u00fasqueda de cada palabra clave.<\/p>\n<p>Aqu\u00ed te dejo una plantilla de prompt que suelo utilizar para este prop\u00f3sito:<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en [EXPERIENCIA].\r\nEst\u00e1s creando un sitio web sobre [TEM\u00c1TICA].\r\nNecesito que me des una lista de 50 palabras clave (keywords) y una estimaci\u00f3n de su volumen de b\u00fasquedas.\r\nAdem\u00e1s, quiero que clasifiques cada palabra clave seg\u00fan la intenci\u00f3n de b\u00fasqueda final del usuario. Las posibles intenciones son: Informativa (el usuario s\u00f3lo quiere informarse sobre un tema), Transaccionales (el usuario quiere hacer una acci\u00f3n, generalmente comprar algo), Comercial (el usuario quiere comprar algo, pero todav\u00eda no est\u00e1 decidido completamente y necesita cierta informaci\u00f3n previa). Navegacional (el usuario quiere buscar la web de una empresa reconocida porque no sabe su URL concreta).\r\nDevuelve el resultado en formato de tabla con las siguientes 3 columnas: Keyword, Volumen estimado, Intenci\u00f3n de b\u00fasqueda. Ordena la tabla por volumen de b\u00fasqueda, de m\u00e1s a menos.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Ten en cuenta que, aunque <strong>ChatGPT <\/strong>nos puede dar estimaciones de vol\u00famenes de b\u00fasqueda,<strong> no tiene la precisi\u00f3n y fiabilidad de una herramienta especializada en keyword research<\/strong>.<\/p>\n<p>Por eso, <strong>el objetivo que perseguimos con ChatGPT es obtener una lista de ideas<\/strong> con cifras orientativas. Despu\u00e9s deberemos contrastar y ampliar dicha lista pasando cada palabra clave que nos interese por una herramienta SEO m\u00e1s apropiada como <a id=\"CTA-3\" href=\"https:\/\/dinorank.com\/\" target=\"_blank\" rel=\"noopener\">DinoRANK<\/a>.<\/p>\n<p><a href=\"https:\/\/dinorank.com\/seccion-keyword-research\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-30904 size-full\" title=\"Descubre el Keyword Research de DinoRANK\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2025\/11\/1.jpg\" alt=\"Descubre el Keyword Research de DinoRANK\" width=\"800\" height=\"800\" \/><\/a><\/p>\n<p>En la siguiente imagen te muestro c\u00f3mo puedo ver las palabras clave de una p\u00e1gina web sobre \u201cejercicios f\u00edsicos para hacer en casa\u201d gracias a este prompt para ChatGPT. Se trata de un ejemplo que ir\u00e9 utilizando a lo largo del art\u00edculo.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21768 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-kw-research.png\" alt=\"Prompt de ChatGPT para SEO: Keyword Research\" width=\"1024\" height=\"538\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-kw-research.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-kw-research-300x158.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-kw-research-768x404.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<div class=\"su-box su-box-style-default\" id=\"\" style=\"border-color:#00604a;border-radius:4px;max-width:none\"><div class=\"su-box-title\" style=\"background-color:#00937d;color:#ffffff;border-top-left-radius:2px;border-top-right-radius:2px\">Curso SEO gratis<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:2px;border-bottom-right-radius:2px\">Si quieres aprender a hacer un buen keyword research y a crear contenido para que esas keywords posicionen en Google, <a id=\"CTA-2\" href=\"https:\/\/dinosauriomecanizado.com\/curso-seo\/\" target=\"_blank\" rel=\"noopener\">en este curso gratuito aprender\u00e1s a hacerlo paso a paso.<\/a><\/p>\n<p>Aunque no seas un experto en SEO ni puedas dedicarle mucho tiempo a esto.<\/div><\/div>\n<h3>5. Profundizar en la intenci\u00f3n de b\u00fasqueda para un determinado contenido<\/h3>\n<p>Con el prompt anterior ya tenemos una idea de la intenci\u00f3n de b\u00fasqueda final que tiene el usuario para una determinada palabra clave.<\/p>\n<p>Ahora bien, cuando planteamos nuestros contenidos, debemos seguir indagando un poco m\u00e1s y conocer <strong>qu\u00e9 es lo que debemos ofrecerle exactamente en nuestro sitio web<\/strong> para satisfacer por completo dicha intenci\u00f3n de b\u00fasqueda.<\/p>\n<p>\u00c9sta es una tarea que habitualmente realizamos acudiendo a Google y haciendo nosotros mismos la b\u00fasqueda para posteriormente analizar uno a uno los resultados de las SERPs.<\/p>\n<p>Pero tambi\u00e9n podemos preguntarle a ChatGPT:<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en marketing digital, especializado en analizar la intenci\u00f3n del usuario.\r\nNecesito que me digas qu\u00e9 tipo de resultados espera un usuario que busca en Google la siguiente palabra clave: [KEYWORD].\r\nAdem\u00e1s, quiero que me indiques c\u00f3mo deber\u00eda orientar mi contenido para satisfacer dicha intenci\u00f3n de b\u00fasqueda, teniendo en cuenta que mi sitio web trata sobre [TEM\u00c1TICA].<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Y \u00e9ste ser\u00eda un ejemplo de ejecuci\u00f3n del prompt anterior.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21767 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-intencion-busqueda.png\" alt=\"Prompt de ChatGPT para SEO: intenci\u00f3n de b\u00fasqueda del usuario\" width=\"1024\" height=\"632\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-intencion-busqueda.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-intencion-busqueda-300x185.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-intencion-busqueda-768x474.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3>6. Palabras clave Long Tail<\/h3>\n<p>Las palabras clave de cola larga (long tail keywords) nos permiten posicionar f\u00e1cilmente nuestros contenidos, ya que suelen tener una baja competencia.<\/p>\n<p>Con ChatGPT podemos <a href=\"https:\/\/dinorank.com\/blog\/como-encontrar-keywords-long-tail\/\"><strong>obtener ideas de palabras long tail<\/strong><\/a> con muy poco esfuerzo.<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en marketing digital, especializado en el an\u00e1lisis de palabras clave.\r\nEst\u00e1s creando un sitio web sobre [TEM\u00c1TICA] y has encontrado la siguiente palabra clave de inter\u00e9s: [KEYWORD].\r\nNecesito que me des una lista de 20 palabras clave long tail que sean variaciones de la palabra clave de inter\u00e9s que te he mencionado anteriormente. Las palabras clave long tail deber\u00edan contener un m\u00ednimo de 4 t\u00e9rminos.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Date cuenta de que en el prompt anterior indico que mis palabras long tail deben tener al menos 4 t\u00e9rminos. Esta condici\u00f3n la puedes ajustar a tu gusto para obtener keywords tan largas como desees.<\/p>\n<p>A continuaci\u00f3n te muestro un ejemplo de resultado.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21769 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-long-tail-kws.png\" alt=\"Prompt de ChatGPT para SEO: palabras clave Long Tail\" width=\"1024\" height=\"594\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-long-tail-kws.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-long-tail-kws-300x174.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-long-tail-kws-768x446.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3>7. Generaci\u00f3n de la arquitectura de la web<\/h3>\n<p>La arquitectura web de tu sitio juega un papel b\u00e1sico a la hora de organizar tus contenidos y facilitar la navegaci\u00f3n del usuario.<\/p>\n<p>Es una labor que conviene realizar con detenimiento ya que tiene un impacto directo en el crecimiento futuro de tu web.<\/p>\n<p>No obstante, aunque siempre aconsejo que seas t\u00fa quien dise\u00f1e y decida la estructura final de tu sitio web, s\u00ed que puedes echar mano de ChatGPT para <strong>obtener una propuesta inicial de arquitectura web sobre la que empezar a trabajar<\/strong>.<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en [EXPERIENCIA].\r\nEst\u00e1s creando un sitio web sobre [TEM\u00c1TICA].\r\nNecesito que propongas una arquitectura de tipo SILO para la web. La arquitectura tendr\u00e1 4 niveles:\r\nEl primer nivel lo constituye la HOME. Prop\u00f3n un t\u00edtulo para esta p\u00e1gina principal.\r\nEl segundo nivel lo constituyen las categor\u00edas principales. Prop\u00f3n 5 categor\u00edas principales que colgar\u00e1n de la HOME.\r\nEl tercer nivel lo forman las subcategor\u00edas. Prop\u00f3n 4 subcategor\u00edas para cada categor\u00eda principal.\r\nEl cuarto nivel lo forman los art\u00edculos finales. Prop\u00f3n 5 ideas de contenidos para los art\u00edculos\/p\u00e1ginas finales de cada subcategor\u00eda.\r\nDevuelve el resultado en forma de \u00e1rbol.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u00c9ste ser\u00eda el resultado que nos ofrece ChatGPT para nuestro ejemplo.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21760 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-arquitectura-web.png\" alt=\"Prompt de ChatGPT para SEO: generaci\u00f3n de la arquitectura de la web\" width=\"1024\" height=\"586\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-arquitectura-web.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-arquitectura-web-300x172.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-arquitectura-web-768x440.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Ahora bien, aunque ya has visto que con ChatGPT puedes obtener r\u00e1pidamente una idea de arquitectura web, quiz\u00e1 no sea la herramienta que mejores resultados ofrece, especialmente en relaci\u00f3n al SEO.<\/p>\n<p>En mi caso, <strong>prefiero<a id=\"CTA-3\" href=\"https:\/\/dinorank.com\/seccion-arquitectura\/\" target=\"_blank\" rel=\"noopener\"> generar la arquitectura web con DinoBRAIN<\/a> <\/strong>y obtener as\u00ed un primer boceto que luego ir\u00e9 puliendo.<\/p>\n<p>El motivo es que los resultados de DinoBRAIN se basan en an\u00e1lisis SEO desarrollados espec\u00edficamente por el equipo de DinoRANK, que se ha ocupado de entrenar a la IA para obtener <strong>respuestas optimizadas y orientadas al posicionamiento web.<\/strong><\/p>\n<p><a href=\"https:\/\/dinorank.com\/seccion-dinoBrain\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-24924 size-large\" title=\"Descubre DinoBRAIN, la IA de DinoRANK\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/Crea-textos-que-posicionen-en-Google-con-IA-DinoBRAIN.png\" alt=\"Descubre DinoBRAIN, la IA de DinoRANK\" width=\"1024\" height=\"427\" \/><\/a><\/p>\n<p>En la siguiente imagen te muestro la arquitectura que nos propone DinoBRAIN para el caso anterior. Te invito a comparar t\u00fa mismo las respuestas de ambas herramientas y sacar tus propias conclusiones.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21761 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-arquitectura-web-dinobrain.png\" alt=\"Generaci\u00f3n de arquitectura web mediante IA con DinoBRAIN\" width=\"1024\" height=\"723\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-arquitectura-web-dinobrain.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-arquitectura-web-dinobrain-300x212.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-arquitectura-web-dinobrain-768x542.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Aqu\u00ed puedes ver m\u00e1s informaci\u00f3n sobre la generaci\u00f3n de <a id=\"CTA-3\" href=\"https:\/\/dinorank.com\/seccion-arquitectura\/\" target=\"_blank\" rel=\"noopener\">arquitecturas web con DinoBRAIN.<\/a><\/p>\n<h3>8. Trabajar el Topical Authority<\/h3>\n<p>La <a href=\"https:\/\/dinorank.com\/blog\/autoridad-topica\/\" target=\"_blank\" rel=\"noopener\">autoridad tem\u00e1tica<\/a> es uno de los factores que m\u00e1s peso tiene hoy en d\u00eda para posicionar tus contenidos.<\/p>\n<p>Si quieres que Google d\u00e9 importancia a lo que publicas, debes mostrarte como un referente en la materia. Y una forma de hacerlo es<strong> tratar un tema con la mayor profundidad posible<\/strong>, mediante varios art\u00edculos que aborden toda la informaci\u00f3n disponible acerca de la materia en cuesti\u00f3n.<\/p>\n<p>Obtener m\u00faltiples ideas de art\u00edculos diferentes que giren sobre un mismo asunto no es una tarea f\u00e1cil. Por suerte, ChatGPT nos puede venir muy bien aqu\u00ed.<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en marketing digital, especializado en el an\u00e1lisis de palabras clave.\r\nEst\u00e1s creando un sitio web sobre [TEM\u00c1TICA] y quieres reforzar el Topical Authority del siguiente tema: [TEMA].\r\nNecesito que me des una lista de 10 ideas de art\u00edculos que giren en torno al tema indicado y que correspondan a b\u00fasquedas que realizan los usuarios en Internet.\r\nTen en cuenta que los art\u00edculos deben satisfacer keywords diferentes relacionadas con el tema principal, de modo que sus contenidos no se canibalicen entre s\u00ed.\r\nDevuelve el resultado en formato de tabla con las siguientes 3 columnas: T\u00edtulo del art\u00edculo, Keyword principal, Volumen estimado de b\u00fasqueda.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Al ejecutar este prompt sobre nuestro ejemplo, obtenemos lo siguiente:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21772 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-topical-authority.png\" alt=\"Prompt de ChatGPT para SEO: Topical Authority\" width=\"1024\" height=\"566\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-topical-authority.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-topical-authority-300x166.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-topical-authority-768x425.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h2>Prompts de ChatGPT para mejorar el SEO t\u00e9cnico<\/h2>\n<p>Hay ciertas labores t\u00e9cnicas del SEO que podemos realizar m\u00e1s f\u00e1cilmente gracias a la ayuda de la inteligencia artificial.<\/p>\n<p>A continuaci\u00f3n te muestro un par de prompts que suelo emplear habitualmente y a los que creo que t\u00fa tambi\u00e9n podr\u00e1s sacarles bastante partido.<\/p>\n<h3>9. Creaci\u00f3n del fichero Robots.txt<\/h3>\n<p>Aunque suele ser habitual tener un fichero robots.txt plantilla que vamos replicando y adaptando cada vez que montamos un sitio web, hay veces que queremos hacer algo especial en alguna de nuestras p\u00e1ginas.<\/p>\n<p>Es entonces cuando no nos queda otro remedio que buscar informaci\u00f3n t\u00e9cnica para descubrir cu\u00e1les son las directrices que debemos incluir.<\/p>\n<p>Con ChatGPT podemos saberlo de forma mucho m\u00e1s sencilla, simplemente pregunt\u00e1ndole con nuestras propias palabras.<\/p>\n<p>A modo de ejemplo, \u00e9ste ser\u00eda el prompt para <strong>obtener un fichero robots.txt bastante completo y v\u00e1lido para un sitio web t\u00edpico creado con WordPress<\/strong>.<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO t\u00e9cnico y en estrategias de crawling e indexaci\u00f3n.\r\nNecesito que crees la estructura b\u00e1sica para un fichero robots.txt que cumpla los siguientes requisitos:\r\n1) Restringe el acceso a los bots que puedan ser peligrosos y permite el acceso al resto.\r\n2) Restringe el acceso a las carpetas de administraci\u00f3n de WordPress, incluyendo wp-admin\/, wp-includes\/, as\u00ed como los directorios de plugins y temas.\r\n3) Restringe el acceso a los archivos feeds, trackbacks y comentarios.\r\n4) Bloquea los archivos wp-login.php y xmlrpc.php.\r\n5) Evita el rastreo de p\u00e1ginas de categor\u00eda, etiquetas, p\u00e1ginas de autor, p\u00e1ginas de resultados de b\u00fasqueda y otras p\u00e1ginas que no se suelen indexar.\r\n6) Restringe el acceso a la carpeta de subida de archivos.\r\n5) Indica la siguiente ubicaci\u00f3n de sitemap: [SITEMAP]<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Aqu\u00ed tienes el resultado de la ejecuci\u00f3n del prompt anterior.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21770 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-robots-txt.png\" alt=\"Prompt de ChatGPT para SEO: fichero Robots.txt\" width=\"1024\" height=\"680\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-robots-txt.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-robots-txt-300x199.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-robots-txt-768x510.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h3>10. Creaci\u00f3n de meta title y meta description<\/h3>\n<p>Otra tarea habitual en SEO es redactar las etiquetas meta de los t\u00edtulos y descripciones que los buscadores muestran en sus listados de resultados.<\/p>\n<p>No es una tarea compleja, pero s\u00ed puede resultar algo tediosa. Especialmente s\u00ed no est\u00e1s muy inspirado y debes escribir el meta title y el meta description para una veintena de art\u00edculos o m\u00e1s.<\/p>\n<p>Para estos casos, aqu\u00ed te dejo un <strong>prompt muy \u00fatil para obtener ideas de meta t\u00edtulos para una p\u00e1gina<\/strong>.<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en marketing digital.\r\nNecesito que generes un meta t\u00edtulo para una p\u00e1gina web que desarrolla la siguiente palabra clave principal: [KEYWORD].\r\nEl meta t\u00edtulo deber\u00e1 incluir dicha palabra clave y tener una longitud m\u00e1xima de 55 caracteres.\r\nAdem\u00e1s, debe despertar la curiosidad del usuario e incitarle a hacer clic sobre el resultado. Para ello, puedes usar alguno de los siguientes emojis (pero no utilices ning\u00fan otro emoji aparte de los que te indico a continuaci\u00f3n): \u3010 \u3011 \u2611\ufe0f \u25b7 \u25c1 \u25b6\ufe0f \u226b \u00ab \u00bb \u2192 \u21e8\r\nDame 10 ideas.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>En cuanto a la<strong> meta descripci\u00f3n<\/strong>, el prompt es similar, aunque con alg\u00fan peque\u00f1o matiz.<\/p>\n<table>\n<tbody>\n<tr>\n<td>\n<pre>Eres un experto en SEO y en marketing digital.\r\nNecesito que generes una meta descripci\u00f3n para una p\u00e1gina web que desarrolla la siguiente palabra clave principal: [KEYWORD].\r\nLa meta descripci\u00f3n deber\u00e1 incluir dicha palabra clave y tener una longitud comprendida entre los 100 y los 150 caracteres.\r\nAdem\u00e1s, debe despertar la curiosidad del usuario e incitarle a hacer clic sobre el resultado. Para ello, puedes usar alguno de los siguientes emojis (pero no utilices ning\u00fan otro emoji aparte de los que te indico a continuaci\u00f3n): \u2728 \ud83d\udd25 \u25b7 \u25c1 \u2713 \u2714 \u2714\ufe0f \u2611\ufe0f \u2764\ufe0f \u26a0\ufe0f \u26a1 \u27a4 \u27a8 \u27a1\ufe0f \u2794 \u2192 \u21e8\u00a0\r\nDame 10 ideas.<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Si adaptas estos prompts a tu caso particular y los ejecutas en ChatGPT, podr\u00edas obtener algo as\u00ed:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-21771 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-title-meta-description.png\" alt=\"Prompt de ChatGPT para SEO: meta title y meta description\" width=\"1024\" height=\"740\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-title-meta-description.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-title-meta-description-300x217.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/04\/prompts-seo-title-meta-description-768x555.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<h2>Consejos finales sobre el uso de prompts de ChatGPT para SEO<\/h2>\n<p>En este art\u00edculo te he mostrado mis mejores prompts para acelerar algunas de las tareas SEO m\u00e1s habituales.<\/p>\n<p>Pero, como siempre digo,<strong> la IA es tan solo una herramienta<\/strong> que debes utilizar de manera inteligente y no confiar al cien por cien en todo lo que te ofrece.<\/p>\n<p>Por eso, cuando emplees ChatGPT para tus tareas rutinarias, ten en cuenta lo siguiente:<\/p>\n<div class=\"su-list\" style=\"margin-left:0px\">\n<ul>\n<li><i class=\"sui sui-hand-o-right\" style=\"color:#00937D\"><\/i> S\u00e9 todo lo espec\u00edfico posible cuando crees tus prompts.<\/li>\n<li><i class=\"sui sui-hand-o-right\" style=\"color:#00937D\"><\/i> No uses directamente los prompts que encuentres en Internet. Ni siquiera los de este post. Pru\u00e9balos antes y ad\u00e1ptalos a tu situaci\u00f3n particular.<\/li>\n<li><i class=\"sui sui-hand-o-right\" style=\"color:#00937D\"><\/i> No te quedes con el primer resultado. Vuelve a repetir la ejecuci\u00f3n hasta dar con la respuesta m\u00e1s apropiada.<\/li>\n<li><i class=\"sui sui-hand-o-right\" style=\"color:#00937D\"><\/i> Eval\u00faa todas las respuestas con esp\u00edritu cr\u00edtico. No des por hecho que todo lo que te dice la IA es correcto.<\/li>\n<li><i class=\"sui sui-hand-o-right\" style=\"color:#00937D\"><\/i> Emplea los resultados de ChatGPT como una primera base sobre la que trabajar. Despu\u00e9s mej\u00f3ralos a partir de tus propios conocimientos y experiencia.<\/li>\n<\/ul>\n<\/div>\n<p>En definitiva, <strong>usa siempre el sentido com\u00fan y revisa todo lo que obtengas a trav\u00e9s de una IA<\/strong>. Es la mejor manera de que tus resultados sean eficientes en el largo plazo.<\/p>\n<p>Dicho esto, espero que los prompts que te he proporcionado a lo largo del art\u00edculo te sean de utilidad. Te animo a probarlos y a decirme qu\u00e9 te han parecido en los comentarios.<\/p>\n<p>Y ya sabes que, si prefieres pasar de complicarte la vida con tanto prompt, <strong>con herramientas como DinoBRAIN puedes generar art\u00edculos y arquitecturas web 100% optimizadas para SEO<\/strong>, en cuesti\u00f3n de minutos y con un solo clic.<\/p>\n<p>Y sin prompts.<\/p>\n<p><a id=\"CTA-3\" href=\"https:\/\/dinobrain.ai\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-24976 size-full\" src=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/banner-dinobrain-contenido-arquitectura.png\" alt=\"\" width=\"1071\" height=\"447\" srcset=\"https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/banner-dinobrain-contenido-arquitectura.png 1071w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/banner-dinobrain-contenido-arquitectura-300x125.png 300w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/banner-dinobrain-contenido-arquitectura-1024x427.png 1024w, https:\/\/dinorank.com\/blog\/wp-content\/uploads\/2024\/08\/banner-dinobrain-contenido-arquitectura-768x321.png 768w\" sizes=\"(max-width: 1071px) 100vw, 1071px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hoy vas a aprender a hacer SEO con ChatGPT. Al menos, voy a darte algunos consejos y prompts que te van a ayudar a mejorar tus contenidos en los rankings de b\u00fasqueda de Google. Ver\u00e1s, yo hace tiempo que incorpor\u00e9 la IA a mi suite de utilidades SEO. Desde herramientas m\u00e1s populares como ChatGPT, a [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":28795,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[10],"tags":[],"class_list":["post-21754","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aprender-seo"],"acf":[],"_links":{"self":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/21754","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=21754"}],"version-history":[{"count":40,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/21754\/revisions"}],"predecessor-version":[{"id":32580,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/posts\/21754\/revisions\/32580"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/media\/28795"}],"wp:attachment":[{"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/media?parent=21754"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/categories?post=21754"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dinorank.com\/blog\/wp-json\/wp\/v2\/tags?post=21754"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}