Resumen
En este documento se explica cómo cambiar la forma en que Google muestra tu contenido en los resultados de búsqueda mediante ajustes a nivel de página y de texto. Los ajustes a nivel de página se pueden configurar incluyendo una metaetiqueta en páginas HTML o en cabeceras HTTP; en cambio, los ajustes a nivel de texto deben especificarse añadiendo el atributo data-
nosnippet
a elementos HTML de las páginas.
Usar la metaetiqueta "robots"
La metaetiqueta "robots" permite utilizar un enfoque granular y a nivel de página para controlar cómo se deben indexar y servir a los usuarios páginas concretas en los resultados de la Búsqueda de Google. Incluye la metaetiqueta "robots" en la sección <head>
de una página determinada. Por ejemplo:
<!DOCTYPE html> <html><head> <meta name="robots" content="noindex" /> (…) </head> <body>(…)</body> </html>
La metaetiqueta "robots" del ejemplo anterior indica a los buscadores que no muestren esa página en los resultados de búsqueda. Como el atributo name
tiene el valor robots
, la directiva se aplica a todos los rastreadores. Para aplicarla a un rastreador específico, sustituye el valor robots
del atributo name
por el nombre del rastreador en cuestión.
Los rastreadores específicos también se denominan user-agent (los rastreadores utilizan su user-agent para solicitar acceso a una página).
El nombre de user-agent del rastreador web estándar de Google es Googlebot
. Si quieres impedir que el robot de Google indexe tu página, modifica la etiqueta como se indica a continuación:
<meta name="googlebot" content="noindex" />
Esta etiqueta indica a Google que no muestre la página en los resultados de búsqueda. Los atributos name
y content
no distinguen entre mayúsculas y minúsculas.
Los buscadores pueden tener distintos rastreadores con propiedades y fines diferentes. Consulta la lista completa de rastreadores de Google. Por ejemplo, para mostrar una página en los resultados de búsqueda web de Google, pero no en Google Noticias, utiliza la siguiente metaetiqueta:
<meta name="googlebot-news" content="noindex" />
Para especificar varios rastreadores de forma individual, puedes utilizar varias metaetiquetas "robots":
<meta name="googlebot" content="noindex"> <meta name="googlebot-news" content="nosnippet">
Usar la cabecera HTTP X-Robots-Tag
X-Robots-Tag
se puede utilizar como un elemento de la respuesta de cabecera HTTP de una URL determinada. Cualquier directiva que se pueda utilizar en una metaetiqueta "robots" también se puede especificar como X-Robots-Tag
. A continuación, se muestra un ejemplo de una respuesta HTTP con una cabecera X-Robots-Tag
que indica a los rastreadores que no indexen una página:
HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: noindex (…)
Es posible combinar varias cabeceras X-Robots-Tag
en la respuesta HTTP o especificar una lista de directivas separadas por comas.
A continuación, se muestra un ejemplo de una respuesta de cabecera HTTP que incluye una cabecera X-Robots-Tag
noarchive
y una cabecera X-Robots-Tag
unavailable_after
.
HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: noarchive X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST (…)
En la cabecera X-Robots-Tag
, se puede especificar de forma opcional un user-agent antes de las directivas. Por ejemplo, con el siguiente conjunto de cabeceras HTTP X-Robots-Tag
, se puede permitir que se muestre una página en los resultados de búsqueda de diferentes buscadores de forma condicional:
HTTP/1.1 200 OK Date: Tue, 25 May 2010 21:42:43 GMT (…) X-Robots-Tag: googlebot: nofollow X-Robots-Tag: otherbot: noindex, nofollow (…)
Las directivas sin user-agent son válidas para todos los rastreadores. El encabezado HTTP, el nombre de user-agent y los valores especificados no distinguen entre mayúsculas y minúsculas.
Directivas de indexación y publicación válidas
Con las directivas que se indican más abajo, se puede controlar el proceso de indexar y servir fragmentos de contenido con la metaetiqueta "robots" y la cabecera X-Robots-Tag
. En los resultados de búsqueda, un fragmento es un breve extracto de texto que se utiliza para demostrar la relevancia de un documento en relación con la consulta del usuario. En la tabla que encontrarás a continuación, se muestran todas las directivas que Google reconoce y su significado. Cada valor representa una directiva.
Se pueden combinar varias directivas en una lista separada por comas. En estas directivas no se distingue entre mayúsculas y minúsculas.
Directivas | |
---|---|
|
No hay restricciones de indexación ni de publicación. Esta directiva es el valor predeterminado y no tiene ningún efecto si se utiliza de forma explícita. |
|
No se muestra la página en los resultados de búsqueda. |
|
No se siguen los enlaces de esta página. |
|
Equivalente a noindex, nofollow .
|
|
No se muestra ningún enlace en caché en los resultados de búsqueda. |
|
No se muestra ningún fragmento ni la vista previa de ningún vídeo en los resultados de búsqueda de la página. Es posible que se siga mostrando una miniatura de imagen estática (si está disponible) si permite obtener una mejor experiencia de usuario. Esto se aplica a todas las formas de resultados de búsqueda (en la Búsqueda web de Google, Google Imágenes o Discover). |
|
Se usan un máximo de Valores especiales:
Ejemplo: <meta name="robots" content="max-snippet:20"> |
|
Se establece el tamaño máximo de una vista previa de imagen para la página en los resultados de búsqueda. Valores
Se aplica a todo tipo de resultados de búsqueda (como la Búsqueda web de Google, Google Imágenes, Discover o el Asistente). Sin embargo, este límite no se aplica en los casos en los que un editor haya concedido permiso por separado para utilizar el contenido. Por ejemplo, si un editor proporciona contenido en forma de datos estructurados en una página (por ejemplo, versiones AMP y canónica de un artículo) o tiene un acuerdo de licencia con Google, este ajuste no interrumpirá los usos permitidos más específicos.
Los editores que no quieran que Google muestre imágenes en miniatura de mayor tamaño cuando sus páginas AMP y la versión canónica de sus artículos aparezcan en la Búsqueda o en Discover deben dar los valores Ejemplo: <meta name="robots" content="max-image-preview:standard"> |
|
Utiliza fragmentos de vídeo de Otros valores admitidos:
Se aplica a todo tipo de resultados de búsqueda (en la Búsqueda web de Google, Google Imágenes, Google Vídeos, Discover o el Asistente). Esta directiva se ignora si no se especifica ningún elemento Ejemplo: <meta name="robots" content="max-video-preview:-1"> |
|
No se ofrece una traducción de esta página en los resultados de búsqueda. |
|
No se indexan las imágenes de esta página. |
|
No se muestra esta página en los resultados de búsqueda después de la fecha y hora especificadas. La fecha y la hora deben especificarse en formatos ampliamente aceptados, como RFC 822, RFC 850 o ISO 8601.
Esta directiva se ignora si no se especifica ningún valor Ejemplo: <meta name="robots" content="unavailable_after: 2020-09-21"> |
Usar conjuntamente directivas para indexar y servir contenido
Puedes crear una instrucción con varias directivas que combine directivas de metaetiquetas "robots" con comas. A continuación, se muestra un ejemplo de una metaetiqueta "robots" que indica a los rastreadores web que no indexen la página y que no rastreen ninguno de los enlaces que contiene:
<meta name="robots" content="noindex, nofollow">
A continuación, se muestra un ejemplo que incluye un fragmento de texto con límite de 20 caracteres y que permite obtener una vista previa de imagen grande:
<meta name="robots" content="max-snippet:20, max-image-preview:large">
Cuando se especifiquen varios rastreadores y directivas, el buscador concatenará las directivas negativas. Por ejemplo:
<meta name="robots" content="nofollow"> <meta name="googlebot" content="noindex">
La página que contiene estas metaetiquetas se interpretará como si tuviera una directiva noindex, nofollow
cuando el robot de Google la rastree.
Utilizar el atributo HTML de data-nosnippet
Puedes marcar partes del texto de una página HTML para que no se incluyan en fragmentos. Se puede hacer a nivel de elemento HTML con el atributo HTML data-nosnippet
en los elementos span
, div
y section
. data-nosnippet
se considera un atributo booleano y es válido con o sin un valor. Para que los sistemas automatizados puedan interpretar correctamente las directivas, el código HTML de la sección debe ser válido y todas las etiquetas deben estar cerradas según corresponda.
Ejemplos:
<p>This text can be shown in a snippet <span data-nosnippet>and this part would not be shown</span>.</p> <div data-nosnippet>not in snippet</div> <div data-nosnippet="true">also not in snippet</div> <div data-nosnippet>some text</html> <!-- unclosed "div" will include all content afterwards --> <mytag data-nosnippet>some text</mytag> <!-- NOT VALID: not a span, div, or section -->
Normalmente, Google procesa las páginas para indexarlas, pero no se garantiza el renderizado.
Por este motivo, la extracción de data-nosnippet
puede producirse tanto antes como después del renderizado. Para evitar el renderizado ambiguo, no añadas ni elimines el atributo data-nosnippet
de los nodos existentes a través de JavaScript. Al añadir elementos DOM a través de JavaScript, incluye el atributo data-nosnippet
según sea necesario cuando añadas inicialmente el elemento al DOM de la página. Si vas a utilizar elementos personalizados, encapsúlalos o renderízalos con elementos div
, span
o section
si tienes que usar data-
nosnippet
.
Usar datos estructurados
Las metaetiquetas "robots" controlan la cantidad de contenido que Google extrae automáticamente de las páginas web para mostrarlo como resultados de búsqueda. No obstante, muchos editores también utilizan los datos estructurados de schema.org para que la información específica aparezca en la presentación de búsqueda. Las limitaciones de las metaetiquetas "robots" no afectan al uso de esos datos estructurados, a excepción de los valores article.description
y description
que se especifican en otras obras creativas.
Con la metaetiqueta "robots" max-snippet
, puedes especificar la longitud máxima de una vista previa basada en los valores description
. Por ejemplo, los datos estructurados recipe
de una página se pueden incluir en el carrusel de recetas aunque la vista previa de texto esté limitada. Con el valor max-snippet
, puedes limitar la longitud de una vista previa de texto, pero la metaetiqueta "robots" no se aplica cuando la información se proporciona mediante datos estructurados para resultados enriquecidos.
Para gestionar el uso de datos estructurados en tus páginas web, puedes modificar los tipos y valores de los datos estructurados. Para hacerlo, añade o quita información para proporcionar solo los datos que quieres que estén disponibles. Ten en cuenta también que los resultados de búsqueda seguirán pudiendo usar los datos estructurados si se declaran dentro de un elemento data-nosnippet
.
Implementación práctica de X-Robots-Tag
Puedes añadir X-Robots-Tag
a las respuestas HTTP de un sitio a través de los archivos de configuración del software de servidor web de tu sitio web. Por ejemplo, en los servidores web Apache puedes utilizar archivos .htaccess y httpd.conf. La ventaja que ofrece el uso de una cabecera X-Robots-Tag
con respuestas HTTP es que permite especificar las directivas de rastreo que se deben aplicar globalmente en un sitio. La posibilidad de utilizar expresiones regulares ofrece un gran nivel de flexibilidad.
Por ejemplo, para añadir una directiva X-Robots-Tag
noindex, nofollow
a la respuesta HTTP de todos los archivos .PDF de un sitio web, añade el fragmento siguiente al archivo raíz .htaccess o al archivo httpd.conf del sitio web en Apache, o al archivo .conf en NGINX
Apache:
<Files ~ "\.pdf$"> Header set X-Robots-Tag "noindex, nofollow" </Files>
NGINX:
location ~* \.pdf$ { add_header X-Robots-Tag "noindex, nofollow"; }
Puedes utilizar X-Robots-Tag
para archivos que no sean HTML, como archivos de imagen en los que no se puedan utilizar metaetiquetas "robots" en HTML. A continuación, se muestra un ejemplo de cómo añadir una directiva X-Robots-Tag
noindex
para archivos de imágenes (.png, .jpeg, .jpg, .gif) en un sitio:
Apache:
<Files ~ "\.(png|jpe?g|gif)$"> Header set X-Robots-Tag "noindex" </Files>
NGINX:
location ~* \.(png|jpe?g|gif)$ { add_header X-Robots-Tag "noindex"; }
Combinar el rastreo con las directivas para indexar y servir contenido
Las metaetiquetas "robots" y las cabeceras HTTP X-Robots-Tag
se descubren al rastrear una URL.
Si no se permite rastrear una página a través del archivo robots.txt, no se podrá encontrar ninguna información sobre directivas para indexar y servir contenido, y la página se ignorará. Si se deben seguir directivas para indexar o servir contenido, no se debe impedir el rastreo de las URL que contengan esas directivas.