Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

[SOLUCIONADO] Perdido con error de datos estructurados de google

Estas en el tema de Perdido con error de datos estructurados de google en el foro de WordPress en Foros del Web. Buenos días, Estoy trabajando en los datos estructurados de mi web y me he bloqueado intentando solucionar los errores de Google: - Error: Missing required ...
  #1 (permalink)  
Antiguo 09/04/2014, 02:24
 
Fecha de Ingreso: enero-2010
Mensajes: 10
Antigüedad: 14 años, 10 meses
Puntos: 0
Perdido con error de datos estructurados de google

Buenos días,

Estoy trabajando en los datos estructurados de mi web y me he bloqueado intentando solucionar los errores de Google:
- Error: Missing required field "updated".
- Error: Missing required hCard "author".

Tengo perfectamente identificado el problema, lo que no consigo es dar con la ubicación del código dentro mi WordPress para corregirlo.

Trabajo con WordPress 3.8.1 y Confit Theme.

Al tema... dentro de content-single.php tengo la sección de código donde sale la fecha y el autor de mis entradas:

Código:
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
	<header class="entry-header">
		<h1 class="entry-title"><?php the_title(); ?></h1>

		<div class="entry-meta">
		<?php
			if ( 'nova_menu_item' == get_post_type() ) :
				$price = get_post_meta( $post->ID, 'nova_price', true );
				if ( '' != $price ) :
					$price_text = __( 'Price: %1$s', 'confit' );
					printf( $price_text, $price );
				endif;
			else :
				confit_posted_on();
			endif;
		?>
		</div><!-- .entry-meta -->
	</header><!-- .entry-header -->
Pero, aunque he estudiado algo de programación (no es mi pasión, jeje) y me defiendo, soy incapaz de interpretar para que sirve el IF. Tampoco he sido capaz de encontrar la función "confit_posted_on" a la que se refiere en el ELSE.

Ese cachito de código se traduce en esto cuando yo abro una entrada en el navegador:

Código:
<div class="entry-meta">

    		Posted on 

    <a rel="bookmark" title="12:53 am" href="http://www.kiteloop.cat/novedades-kite-ozone-brunotti-underwave/comparativa-entre-ozone-catalyst-ozone-c4">
        <time class="entry-date" pubdate="" datetime="2014-03-08T00:53:51+00:00"></time>
    </a>
    <span class="byline"></span>

</div>
Y un ejemplo de entrada en la que necesito modificar para que no dé error "updated" es:
http://www.kiteloop.cat/novedades-kite-ozone-brunotti-underwave/comparativa-entre-ozone-catalyst-ozone-c4

En este caso particular, debajo del encabezado dice:
Posted on 8 marzo, 2014 by Escuela Kiteloop

Pues bien, el 8 marzo 2014 Google no me lo lee como un entry-updated

Necesito entender este código para cambiar class="entry-date" por class="entry-updated" y solucionar el error de updated, no?

Gracias por vuestra ayuda!!
  #2 (permalink)  
Antiguo 09/04/2014, 03:09
Avatar de AlejandroGalvez  
Fecha de Ingreso: noviembre-2013
Mensajes: 189
Antigüedad: 11 años
Puntos: 49
Respuesta: Perdido con error de datos estructurados de google

El condicional "if ( 'nova_menu_item' == get_post_type() ) :" se está ejecutando si el post que se muestra es de tipo "nova_menu_item", un custom post type que incluirá tu tema. Un post puede ser de tipo POST (artículo), PAGE (páginas), ATTACHMENT (archivo adjunto), REVISION (borradores) o NAVIGATION MENU (objetos del menú) por defecto en WordPress. Pero se pueden crear nuevos tipos de post para ampliar la funcionalidad:

http://codex.wordpress.org/Post_Types

Ahora que entiendes cuándo entra al IF lo que se ejecuta dentro es más sencillo aún. Recupera un meta (un dato del post previamente introducido) llamado "precio" y muestra su contenido acompañado de un texto. Supongo que algo como "Price: 100" será el resultado.

El ELSE se ejecutará si es cualquier otro tipo de entrada que no sea "nova_menu_item". Lo que ejecuta el ELSE es la llamada a una función que aparentemente genera la información de fecha y autor que deseas cambiar.

Vas a tener que buscar la función "confit_posted_on();" para editar lo que deseas. Probablemente esté en el archivo "functions.php". De no ser así te toca ir abriendo archivos PHP y utilizar el buscador de tu editor de texto para localizar la función.
  #3 (permalink)  
Antiguo 09/04/2014, 14:46
 
Fecha de Ingreso: enero-2010
Mensajes: 10
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Perdido con error de datos estructurados de google

Cita:
Iniciado por AlejandroGalvez Ver Mensaje
El condicional "if ( 'nova_menu_item' == get_post_type() ) :" se está ejecutando si el post que se muestra es de tipo "nova_menu_item", un custom post type que incluirá tu tema. Un post puede ser de tipo POST (artículo), PAGE (páginas), ATTACHMENT (archivo adjunto), REVISION (borradores) o NAVIGATION MENU (objetos del menú) por defecto en WordPress. Pero se pueden crear nuevos tipos de post para ampliar la funcionalidad:

[url]http://codex.wordpress.org/Post_Types[/url]

Ahora que entiendes cuándo entra al IF lo que se ejecuta dentro es más sencillo aún. Recupera un meta (un dato del post previamente introducido) llamado "precio" y muestra su contenido acompañado de un texto. Supongo que algo como "Price: 100" será el resultado.

El ELSE se ejecutará si es cualquier otro tipo de entrada que no sea "nova_menu_item". Lo que ejecuta el ELSE es la llamada a una función que aparentemente genera la información de fecha y autor que deseas cambiar.

Vas a tener que buscar la función "confit_posted_on();" para editar lo que deseas. Probablemente esté en el archivo "functions.php". De no ser así te toca ir abriendo archivos PHP y utilizar el buscador de tu editor de texto para localizar la función.
Buenas Alejandro, lo has bordado en todo lo que has dicho, lo he entendido a la perfección. Muchísimas gracias.

Lo del precio me lo temía pero no encontraba la lógica y ahora lo recuerdo, mi tema (Confit) fue de primeras diseñado para menús de restaurantes pero a mi me gustó para mi propuesta y lo adapté a mis necesidades.

Efectivamente lo que yo necesito, tal como temía, se encuentra dentro de la función y, efectivamente, he buscado dentro de functions.php sin éxito

Pensaba que había alguna manera más sencilla de averiguar desde donde se llama la función... Tocará coger un backup local y con el notepad++ buscar la función.

¿en serio puede estar en cualquier php del tema?
  #4 (permalink)  
Antiguo 09/04/2014, 16:16
Avatar de AlejandroGalvez  
Fecha de Ingreso: noviembre-2013
Mensajes: 189
Antigüedad: 11 años
Puntos: 49
Respuesta: Perdido con error de datos estructurados de google

Todo depende del desarrollador, podría hasta estar en un plugin complementario. Pero no temas, es muy fácil. Abre la carpeta principal del tema y ordena la búsqueda a Windows por ".php". Así filtrará todos los documentos PHP. Luego ábrelos todos con Notepad++ y efectúa una búsqueda de esa función en TODOS LOS ARCHIVOS ABIERTOS a la vez. Lo encontrarás en menos de 1 segundo.

Si no atinas puedes consultar directamente al desarrollador en su foro de soporte, sistema de tickets o lo que sea. A ver si puede indicarte dónde está.
  #5 (permalink)  
Antiguo 22/04/2014, 05:13
 
Fecha de Ingreso: enero-2010
Mensajes: 10
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Perdido con error de datos estructurados de google

Cita:
Iniciado por AlejandroGalvez Ver Mensaje
Todo depende del desarrollador, podría hasta estar en un plugin complementario. Pero no temas, es muy fácil. Abre la carpeta principal del tema y ordena la búsqueda a Windows por ".php". Así filtrará todos los documentos PHP. Luego ábrelos todos con Notepad++ y efectúa una búsqueda de esa función en TODOS LOS ARCHIVOS ABIERTOS a la vez. Lo encontrarás en menos de 1 segundo.
Buenas,

Vuelta de vacaciones y tal como has dicho así ha sido.

La maldita función se encontraba dentro del tema, en la carpeta "inc", el fichero template-tags.php

Ya lo podía buscar ya... ¿qué hará allí?

Cambié los class por "updated" y "vcard", en el caso del vcard poniendo en id el nombre y tras la prueba de datos de las Webmaster Tools ahora no da ningún error. Solo falta esperar que un robot se pasee de nuevo por la web para darme las nuevas estadísticas.

Gracias por todo Alejandro. TEMA RESUELTO!!!

Etiquetas: google, metadatos, seo, tools, webmaster
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:41.