Inicio InformáticaMostrar la fecha de modificación de un post en Wordpress sin plugins

Mostrar la fecha de modificación de un post en Wordpress sin plugins

Publicado por entreunosyceros
Publicado el: Última actualización:

AVISO: Esta entrada tiene más de dos años desde su publicación. Es posible que el contenido esté desactualizado.

Otra vez más aquí. Esta vez voy a dejar colgado un artículo que viene a completar otro que publiqué hace ya un tiempo en esta página. En aquel mirábamos cómo añadir un widget en Wordpress que mostrase una lista con los últimos posts modificados, en la que se indicase la fecha en la que ocurrió esa modificación. Bueno, pues en este caso vamos a ver cómo podemos mostrar la fecha de modificación de un post en Wordpress.

Como todos los usuarios de Wordpress sabemos, la mayoría de los temas para este CMS sólo se muestran la fecha de creación de los artículos. Esto está bien, sin embargo puede ser que en algunos casos te pueda resultar interesante hacerles ver a tus lectores la fecha de la última actualización. En las siguientes líneas vamos a ver cómo mostrar la fecha de la actualización en las entradas de WordPress a través de código.

Dos opciones para mostrar la fecha de modificación de un post

Utilizando un Hook

Si no quieres complicarte la vida buscando la posición que te interese, como veremos en la segunda opción, la posibilidad más sencilla es utilizar un Hook llamado the_content.  Este código lo podemos agregar al plugin de funciones, que si no tienes, deberías tener instalado en tu Wordpress. En caso de que no lo tengas, puedes agregar el siguiente código al archivo functions.php del child theme que estés utilizando. El código que debes usar es el siguiente:

function last_updated_entry( $content ) {

	if ( ! is_single() ) return $content;

	$custom_content = '';
	$u_time = get_the_time('U');
	$u_modified_time = get_the_modified_time('U');

	if ($u_modified_time >= $u_time + 86400) {
		$updated_date = get_the_modified_time('j F, Y');
		$updated_time = get_the_modified_time('h:i a');
		$custom_content .= '<p class="last-updated">Última actualización: '. $updated_date . ' - '. $updated_time .'</p>';
	}

	$custom_content .= $content;
	return $custom_content;
}

add_filter( 'the_content', 'last_updated_entry' );

En el código anterior el hook the_content hace referencia a la función last_updated_entry. Dentro de la función comprobamos primero si es una entrada con is_single. Si la respuesta es true, recuperamos la fecha de creación y fecha de modificación.

Después se comparan las fechas y en caso sean diferentes entonces formaremos la variable $custom_content. En la variable $custom_content se concatena la fecha y hora de actualización. Al final concatenamos $custom_content con la variable $content y devolvemos el resultado.

Al final obtendremos algo similar a la siguiente imagen:

mostrar última actualización de un post con hook

Quiero decir que el color de las letras se los he dado con CSS3, pero eso ya es al gusto de cada uno.

Modificar el archivo de tu theme

Esta opción es quizás un poco más complicada, ya que requiere que conozcas los archivos de tu theme de Wordpress. Aquí vas a necesitar ubicar el archivo de tu theme donde quieras colocar el mensaje de última modificación. Para este ejemplo, yo lo voy a colocar en el archivo que muestra los posts, dentro de mi child theme.

El código a colocar es el siguiente:

if ( ! function_exists('show_update_entry') ){
	function show_update_entry(){

		if ( ! is_single() ||  function_exists( 'is_amp_endpoint' ) && is_amp_endpoint()  ) return '';
		
		$custom_content='';
		$u_time = get_the_time('U');
		$u_modified_time = get_the_modified_time('U');

		if ($u_modified_time >= $u_time + 86400) {
			$updated_date = get_the_modified_time('j F, Y');
			$updated_time = get_the_modified_time('h:i a');
			$custom_content .= '<p class="last-updated">Última actualización: '. $updated_date . ' - '. $updated_time .'</p>';
		}

		return $custom_content;
	}
}

Este código es muy parecido al anterior, salvo que en este caso se comprueba que la función show_update_entry existe y vamos a a devolver directamente la variable $custom_content.

Si tienes un plugin de funciones, puedes colocar el anterior código dentro de este plugin. También lo puedes colocar dentro del archivo functions.php. Después debes ubicar el archivo que muestra los posts. En algunos themes de Wordpress sería single.php, pero como digo, esto varia según el theme que utilices.

Una vez que sepas dónde colocarlo, para utilizar la función anterior, solo habrá que imprimirla con una llamada como la siguiente:

echo show update entry

<?php echo show_update_entry()?>

Con esto puedes ubicar el mensaje de la fecha de modificación en dónde mejor te parezca. Al final verás algo parecido a lo siguiente:

Como en la opción anterior, el color no es más que un CSS3 sencillo. Esto ya queda de la mano de cada cual.

En resumen, solo queda decir que como se puede ver no es necesario utilizar plugins para mostrar la última fecha de modificación de un post en Wordpress.

También te puede interesar ...

Deja un comentario

* Al utilizar este formulario, aceptas que este sitio web almacene y maneje tus datos.

4 Comentarios

Magum 2 septiembre, 2019 - 12:58 PM

Muchas gracias. Me viene muy bien. Gracias x compartir

Respuesta
sapoclay 3 septiembre, 2019 - 12:59 AM

Gracias a ti por la visita y el comentario. Salu2.

Respuesta
Angie 11 abril, 2019 - 1:44 PM

Perfecto. Facil y funcional

Respuesta
sapoclay 11 abril, 2019 - 4:12 PM

Gracias a ti por comentar. Salu2.

Respuesta
Resumen de privacidad
cookies entreunosyceros

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible.

La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudarnos a comprender qué secciones de la web encuentras más interesantes y útiles.

Nunca almacenamos información personal de ningún tipo.

Tienes toda la información sobre privacidad, derechos legales y cookies en nuestra página sobre la política de privacidad o en la página sobre nuestra política de cookies.

Cookies necesarias

Las cookies estrictamente necesarias tiene que activarse siempre para que podamos guardar tus preferencias de ajustes de cookies.

Si desactivas esta cookie no podremos guardar tus preferencias. Esto significa que cada vez que visites esta web tendrás que activar o desactivar las cookies de nuevo.

Cookies de terceros

Esta web utiliza las siguientes cookies adicionales:

- Mailchimp: Recordar si ya estás suscrito al boletín de noticias y sino ofrecértelo al salir.

- Accesibilidad: Para saber tus ajustes de accesibilidad en cada visita.

- Comentarios: Saber si has leído y aceptado nuestra política de privacidad a la hora de dejar un comentario en la web.

- Google Analytics: Localización para recopilar información anónima tal como el número de visitantes del sitio, o las páginas más populares.

- Goggle Adsense: Anuncios personalizados según tu geolocalización y preferencias.

Dejar estas cookies activadas nos permite mejorar nuestra web.

Adblock Detectado!!

Ayúdanos deshabilitando la extensión AdBlocker de tu navegador para visitar esta web.
Si no sabes hacerlo en Chrome, consulta el siguiente enlace. Si utilizas Firefox, puedes consultar este otro enlace.
Esto mejorará tu experiencia en este sitio web.