Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
google search console

Cómo corregir los errores de datos estructurados de Google Search Console en WordPress

El otro día vi que tenía una serie de errores en el apartado Aspecto de la búsqueda => Datos estructurados de la Google Search Console:

microformat error

Concretamente en el tipo de datos hentry, fuente: microformats.org. hentry en un microformato, es decir, una manera de agregar significado semántico a un contenido de texto plano. El microformato hentry tiene las siguientes propiedades:

  • entry-title ( obligatorio, texto)
  • entry-content (opcional, texto)
  • entry-summary (opcional, texto)
  • entry-updated (obligatorio, fecha)
  • entry-published (opcional, fecha)
  • author (obligatorio, hCard)
  • bookmark (opcional, rel-bookmark)
  • tags (opcional, rel-tag)

 

Más información aquí

Como se puede observar en la foto anterior los errores vienen dados porque faltan propiedades obligatorias como author, entry-title y updated. Esto es porque en el listado de posts, los articles lucían así:

Como puede observarse, en la etiqueta article se llama a la función post_class(), que genera uno o más de los siguientes valores para el atributo class:

  • post-[id]
  • [post-type]
  • type-[post-type]
  • status-[post-status]
  • format-[post-format] (default to ‘standard’)
  • post-password-required
  • post-password-protected
  • has-post-thumbnail
  • sticky
  • hentry (hAtom microformat pages)
  • [taxonomy]-[taxonomy-slug] (includes category)
  • tag-[tag-name]

 

Entre ellos hentry. Por lo tanto desde la Search Console se detectó que existía una etiqueta article con el microformato hentry, pero dentro de ella faltaban propiedades obligatorias. Éstos errores puede influir negativamente en nuestro SEO. Ahora veamos dos maneras de solucionarlo:

 

Solución 1: Muerto el perro se acabó la rabia

Si eliminamos la causa del problema, eliminaremos el problema en sí. Vamos a eliminar el valor hentry de la función post_class() para que la Google Search Console no detecte un microformato. Para ello en el archivo functions.php de nuestro tema añadiremos las líneas:

 

Solución 2: Añadir las propiedades obligatorias

Para corregir los errores vamos a añadir en todas las plantillas de nuestro tema donde tengamos loops que muestren información sobre nuestros posts, quedando algo así:

Como puede observarse, hemos añadido:

  • class=”entry-title” rel=”bookmark” en la etiqueta a del <h2>
  • <span class=”vcard author”> envolviendo la función the_author_posts_link()
  • <span class=”updated”> envolviendo la fecha (the_time(‘j’), the_time(‘F’) y the_time(‘Y’))

 

La propiedad author del microformato hentry debe tener formato de hCard, por lo que sería necesario añadir rel=”author” class=”fn” al enlace de autor en la función the_author_posts_link(). Para esto añadiremos lo siguiente a nuestro functions.php:

Con estos pasos ya sólo queda esperar a que la Google Search Console rastree de nuevo nuestro sitio y veamos cómo se eliminan los errores. No obstante, puedes verificarlos online desde aquí antes de subir estos cambios a producción.

Puede que también te interese

Cómo definir una plantilla diferente por categoría para el detalle de los posts
Cómo definir una plantilla diferente por categoría para el detalle de los posts
En WordPress se usa la plantilla single.php para el detalle de los posts. Podemos crear plantillas para los posts de un custom post type concreto…
Eliminar código innecesario del wp_head
Eliminar código innecesario del wp_head
Por defecto WordPress incluye una serie de meta-tags en la cabecera de nuestro sitio a través de la función wp_head(). La mayoría de estas etiquetas…
Creando un plugin para WordPress parte 5: Subida al Repositorio
Creando un plugin para WordPress parte 5: Subida al Repositorio
1. Creando un plugin para WordPress: Planificación y planteamiento 2. Creando un plugin para WordPress: Estilo del Código 3. Creando un plugin para WordPress: Escribiendo…
Creando un tema desde cero para WordPress parte 1: Consideraciones previas
Creando un tema desde cero para WordPress parte 1: Consideraciones previas
1. Creando un tema desde cero para WordPress: Consideraciones previas 2. Creando un tema desde cero para WordPress: Escribiendo el tema 3. Creando un tema…




    • ¿estás usando rich snippets verdad?

      Tendrías que completar el atributo image:

      “image”: {
      “@type”: “ImageObject”,
      “url”: urldetuimagen,
      “height”: alturadetuimagen,
      “width”: anchodetuimagen
      },

  • Rodolfo Alejandro Sabastizagal
    • Los mensajes de “Se requiere un valor para el campo …” te están indicando que no lo encuentra o está vacio. Revisa tu plantilla y si no los tienes agregalos como en el ejemplo del artículo

  • YamaT

    Hola necesito tu ayuda por favor, te lo agradeceria!!! en mi single.php no tengo las cosas asi, tal vez sea porque utilizo un theme distinto y tiene las cosas de otro forma, no se, pero mi author y todo me aparece asi: https://uploads.disquscdn.com/images/a52a804fb501739c9a25548b2c638067f2595bdb909b39a056d43de03560056e.png

    Como hago entonces las moficaciones? Espero tu respuesta, gracias!!!

    • La solución pasaría bien porque contactes con el autor del tema y solicites estos cambios, bien porque crees tu propio child-theme donde puedas modificar el single.php a tu antojo

      Saludos

      • YamaT

        Entiendo, pero y si utilizo la opcion de…¿”eliminar el valor hentry de la función post_class() para que la Google Search Console no detecte un microformato”? eso afectará al seo o posicionamiento de mi web? y con la otra opcion mejoraria? tan importante es?

        • No soy un experto en SEO. Creo que los microformatos son buenos, y correctamente utilizados pueden ayudar a mejorar (no sé si mucho o poco) el posicionamiento.

          • YamaT

            Pero entonces si hay un microformato con errores, y está mal (el mio), entonces quitarlo (en el functions.php) supone mas beneficios que dejarlo ahí con los errores supongo no? Aunque no seas un experto en seo, crees que me traería mas beneficios quitarlo que dejarlo mal? Por cierto, gracias por tus respuestas 😀

          • Como te dije, no soy un experto en SEO. No creo que sean un factor determinante, pero sí soy de la opinión de mejor no tenerlos a tenerlos con errores.

            Quizá puedas quitarlos de tu plantilla e intentar buscar algún plugin que te los genere.