Llevamos unos días dándole vueltas a este tema: ¿Es una buena idea para SEO cambiar la fecha de publicación de una entrada de WordPress por la fecha de la última actualización? En principio si hacemos este cambio, le mostramos a los usuarios y buscadores que la información está actualizada, ¿pero es efectivo?
Por esta razón hemos empezado el año con un experimento en varios blogs donde hemos realizado justamente este cambio: Ahora el post muestra la fecha de actualización como fecha del post y no la fecha de publicación.
¿Cómo cambiar la fecha de publicación por la de actualización en WordPress?
Esto depende de cada tema. Vamos a describir como se hace el cambio en uno de los temas de WordPress estándar: TwentyThirteen. La función para mostrar la fecha de actualización hay que añadir en el archivo functions.php el siguiente código. OJO: Siempre recomendadmos usar un CHILD THEME de todos los temas estándar. Este código se debería de añadir en ese CHILD THEME.
if ( ! function_exists( 'twentythirteen_entry_date' ) ) :
function twentythirteen_entry_date( $echo = true) {
if ( has_post_format( array( 'chat', 'status' ) ) )
$format_prefix = _x( '%1$s on %2$s', '1: post format name. 2: date', 'twentythirteen' );
else
$format_prefix = '%2$s';
$date = sprintf( '',
esc_url( get_permalink() ),
esc_attr( sprintf( __( 'Permalink to %s', 'twentythirteen' ), the_title_attribute( 'echo=0' ) ) ),
esc_attr( get_the_date( 'c' ) ),
esc_html( sprintf( $format_prefix, get_post_format_string( get_post_format() ), get_the_date() ) )
);
if ( $echo )
echo $date;
return $date;
}
endif;
En otro de los frameworks de temas que utilizamos bastante (GENESIS), hay que añadir en el archivo functions.php del tema las siguientes líneas al final:
add_filter( 'genesis_post_info', 'custom_post_info' );
function custom_post_info( $post_info ) {
$u_time = get_the_time( 'U' );
$u_modified_time = get_the_modified_time( 'U' );
if ( $u_modified_time >= $u_time + 86400 ) {
$post_date = get_the_modified_time( 'F jS, Y' );
}
else {
$post_date = get_the_time( 'F jS, Y' );
}
$post_info = __( 'By', 'genesis' ) . ' [post_author_posts_link] ' . __( 'on ', 'genesis' ) . $post_date .' [post_comments] [post_edit]';
return $post_info;
}
¿Y con datos estructurados se puede hacer?
Además también estamos probando hacerlo con datos estructurados, ya que existe un estándar para decirle al buscador en que fecha se ha actualizado una entrada de WordPress. Cada artículo debe tener dos fechas, una que es la de publicación (DATE) y otra que es la de actualización (UPDATED).
En el tema estándar TwentyThirteen lo conseguimos añadiendo este código al archivo functions.php:
function twentythirteen_entry_date( $echo = true ) {
if ( has_post_format( array( 'chat', 'status' ) ) )
$format_prefix = _x( '%1$s on %2$s', '1: post format name. 2: date', 'twentythirteen' );
else
$format_prefix = '%2$s';
$date = sprintf( '',
esc_url( get_permalink() ),
esc_attr( sprintf( __( 'Permalink to %s', 'twentythirteen' ), the_title_attribute( 'echo=0' ) ) ),
esc_attr( get_the_date( 'c' ) ),
esc_html( sprintf( $format_prefix, get_post_format_string( get_post_format() ), get_the_date() ) ),
esc_attr( get_the_modified_date( 'c' ) ),
esc_html( sprintf( $format_prefix, get_post_format_string( get_post_format() ), get_the_modified_date() ) )
);
if ( $echo )
echo $date;
return $date;
}
Ahora vamos a esperar a ver la efectividad en los resultados de búsqueda de Google. En principio debería de tener influencia sobre los resultados, porque estamos haciendo que el contenido sea más nuevo y fresco….
En unas semanas o meses publicaremos los resultados.
Si habéis hecho pruebas similares, dejarnos un comentario con las conclusiones u observaciones que hayáis hecho.
[ ACTUALIZACIÓN 18/MARZO/2014 ]
Hoy hemos comprobado los resultados y la verdad es que nos hemos encontrado de todo: Más o menos un 50% con la fecha original (con la que se indexó por primera vez el artículo) y un 50% con la fecha de actualización. Ahora hemos añadido a algunos blogs la fecha de actualización como metadato. A ver qué impacto tiene sobre los resultados.
[ /ACTUALIZACIÓN 18/MARZO/2014 ]