Avisos
Vaciar todo

[Resuelto] Fecha de actualización del post  

 
Carlos
 Carlos
Usuario eminente

Buenos días,

Estoy haciendo una plantilla para mostrar las entradas del blog usando contenido dinámico. Muestro la fecha de publicación pero no veo como poder mostrar la fecha de actualización del post.

Indagando por ahí he visto que se puede hacer de diferentes maneras. A ver si me podéis ayudar.

Gracias de antemano.
¡¡Feliz Navidad!!

Contenido solo visible a usuarios registrados

Respondido : 24/12/2022 9:49 am
Argenis
 Argenis
Soporte CMS Webempresa Moderator

Hola Carlos,

Puedes seguir la guía oficial de Divi para hacer este ajuste:

https://www.elegantthemes.com/blog/divi-resources/how-to-add-the-last-updated-date-to-divis-blog-post-meta-data

Verifica y nos comentas si tienes dudas durante algún paso.

Un saludo 🖐️ 

Respondido : 24/12/2022 1:21 pm

Carlos
 Carlos
Usuario eminente

Hola @argenis,

El código que me pasas no me ha funcionado para que salgan ambas fechas a la vez (publicación y actualización).

 

Por otro lado antes de hacer la pregunta en el foro ya había buscado posibles soluciones pero no me atreví a probar un código que había encontrado, porque nunca había añadido código. Como el código es muy parecido y era para incluirlo en el mismo sitio, me he lanzado a probarlo y me funciona!

 

Ahora el problema es que me sale la fecha en ingles! ¿Cómo puedo hacer para que me salga en español?

 

Te dejo el código:  

function et_last_modified_date_blog( $the_date ) {
    if ( 'post' === get_post_type() ) {
        $the_time = get_post_time( 'His' );
        $the_modified = get_post_modified_time( 'His' );
 
        $last_modified =  sprintf( __( 'Actualizado: %s', 'Divi' ), esc_html( get_post_modified_time( 'j \d\e F \d\e Y' ) ) );
        $published =  sprintf( __( 'Publicado: %s', 'Divi' ), esc_html( get_post_time( 'j \d\e F \d\e Y' ) ) );
 
        $date = $the_modified !== $the_time ? $last_modified . ' | ' .  $published : $published;
 
        return $date;
    }
}
add_action( 'get_the_date', 'et_last_modified_date_blog' );
add_action( 'get_the_time', 'et_last_modified_date_blog' );

 

He podido adaptar el código para que me salga con el formato de fecha que quiero pero el mes me sale en inglés. ¿Habría alguna manera de poder sacarlo en español?

 

Gracias!

Respondido : 24/12/2022 3:57 pm
Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Carlos, 

En este caso puedes enviarnos algunas captura o abrir el sitio web donde tienes añadida esta opción, de manera general veo que posiblemente el código esté sobreescribiendo el nombre de los meses en tu sitio web y los añada en inglés. 

Una opción que puedes intentar si utilizas este código es traducir los meses con el plugin → https://es.wordpress.org/plugins/real-time-auto-find-and-replace/

Una vez los instalas debes añadir una nueva regla, dentro de este añadir el texto a modificar por ejemplo December y seleccionar que lo aplique para expresiones regulares, por ejemplo

image

Puedes verifica si con ello logras mostrarlo como deseas.

Un Saludo 

Respondido : 24/12/2022 7:01 pm

Carlos
 Carlos
Usuario eminente

Hola @karen, Feliz Navidad!

 

Yo estoy aprendiendo a hacer mi página y no se cual sea la mejor solución. Si usar código (este u otro), un plugin, la combinación de ambas cosas.... Me dejo aconsejar por vosotros.

La fecha de publicación y la de última actualización la estoy poniendo en la plantilla para las entradas, por lo que se muestra en todas las entradas.

Dejo el sitio abierto y os paso un link donde se muestran las fechas justo debajo de la imagen principal:

 

Contenido solo visible a usuarios registrados

 

Nota: No sé si he ocultado bien la URL para que no salga en las búsquedas cuando alguien busque mi dominio.

 

Un saludo y gracias por vuestra ayuda

¡Feliz Navidad!

Respondido : 25/12/2022 8:31 am
Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Carlos, 

En este caso puedes probar utilizando la combinación del plugin y el código, de esta forma puedes añadir la característica que deseas en los meta que veo ya se muestra y a su vez tenerlo en español como deseas con el plugin. 

Si al realizar las pruebas con ambos vez que todo funciona puedes usar ambos. 

Un Saludo 

Respondido : 25/12/2022 2:38 pm

Carlos
 Carlos
Usuario eminente

@karen

 

Siento dar tanto la vara con esto pero casi lo tengo...

Ahora tengo un código nuevo, más bien la mezcla de 2.... La cosa es que me funciona y hace justo lo que quiero: tengo por un lado la fecha de publicación y por otro la de la última actualización, no van concatenadas en el mismo campo, sino que van por separado. Además me salen en español con el formato que yo quiero.

 

Os dejo el código que tengo puesto en functions.php:

 

function fecha_actualizacion_post( $content ) {
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if (is_single() && $u_modified_time >= $u_time + 86400) {
$updated_date = get_the_modified_time('j \d\e F \d\e Y');
$custom_content .= '<p class="ultima-actualizacion">Actualizado: '. $updated_date .
$updated_time .'</p>';
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'fecha_actualizacion_post' );

 

El único problema es que la fecha de actualización me sale al principio del post y me gustaría ponerla con la otra fecha en la plantilla, debajo de la imagen principal. Os dejo link para que podáis verlo:

 

Contenido solo visible a usuarios registrados

 

¿Podría ponerla donde yo quiera usando un módulo de código? ¿como lo haría? O alguna otra solución posible para poder mostrarlo desde la plantilla que estoy haciendo para las entradas.

 

Gracias de nuevo!

Pd- Me quedo con lo idea de plugin, si no consigo resolverlo solo con el código lo intentaré usando el plugin+codigo.

Respondido : 25/12/2022 4:44 pm
Karen Rios
 Karen Rios
Soporte CMS Webempresa Moderator

Hola Carlos, 

En este caso necesitas editar el archivo que añade los meta en tu sitio web, usualmente puede ser el single.php o él archive.php puedes ver más información sobre los diferentes métodos para mostrar lo que necesitas en el siguiente URL → Contenido solo visible a usuarios registrados

Un saludo 

 
Respondido : 25/12/2022 8:17 pm

Carlos
 Carlos
Usuario eminente

Buenos días,

 

Ahora mismo consigo:

Por un lado que me muestre fecha de Actualización + Publicación en español y con el formato que yo quiero en la plantilla.

Por otro lado consigo mostrar la fecha de actualización en español y con el formato que quiero en las entradas.

 

Contenido solo visible a usuarios registrados

 

Pero no soy capaz de mostrar la fecha de actualización en la plantilla. No he podido encontrar donde está mi plantilla para las entradas o donde se agregan los meta de fecha.

 

Un saludo!

Respondido : 26/12/2022 8:54 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Carlos.

Veo que se muestra la fecha de actualización y la de publicación:

screenshot carloscanizares.es 2022.12.26 10 58 08

Lo que no entiendo es " no soy capaz de mostrar la fecha de actualización en la plantilla " no se si te refieres a que quieres añadir código en los archivo originales de la plantilla, si puedes indicarnos exactamente como quieres mostrar esos datos seria de ayuda.

 

Un saludo

 

Respondido : 26/12/2022 10:50 am

Carlos
 Carlos
Usuario eminente

Hola @pepesoler,

 

Estaba haciendo una plantilla para mostrar las entradas y quería poner ambas fechas por separado en diferentes líneas.

 

Pero ya he conseguido que se muestre en español y formato que quiero, con eso me conformo de momento.

 

Ya podéis cerrar el tema.

 

Muchas gracias por todo!!

Un saludo!

Respondido : 26/12/2022 2:37 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Carlos.

Genial !! Me alegra que consiguieras solucionarlo.

Cualquier consulta que tengas no dudes en comunicarlo.

 

Un saludo

Respondido : 26/12/2022 2:50 pm