Saltar al contenido

Drupal – Cambiar el formato de fecha del artículo

Agradeceríamos tu ayuda para compartir nuestros tutoriales con relación a las ciencias de la computación.

Solución:

Entonces, después de pasar más tiempo del que me gustaría admitir investigando esto, se me ocurrieron dos soluciones para esto.

Solución 1

Una forma de hacerlo es con la función de fecha que mencionó darol100 en su respuesta. Modificando su ejemplo para mi caso, en mi node--article.html.twig archivo, cambié:

% trans %Submitted by  author_name  on  date % endtrans %

a

% set createdDate = node.getCreatedTime
% trans %Submitted by  author_name  on  createdDate  % endtrans %

La ventaja de este enfoque es que es fácil y rápido. La desventaja es que no estoy usando el sistema de formato de fecha integrado de Drupal.

Solución 2

Para usar el sistema de formato de fecha de Drupal, primero creé mi formato personalizado en admin/config/regional/date-time. Luego edité node--article.html.twig como sigue:

% set createdDate = node.getCreatedTime
% trans %Submitted by  author_name  on  createdDate  % endtrans %

Esto supone que nombré mi formato personalizado “Mi formato personalizado“, lo que da como resultado el nombre de la máquina my_custom_format.

Si bien esta solución requiere un paso adicional, creo que es la forma más Drupal de hacerlo.

Lo aprendí en esta página sobre los filtros Twig de Drupal.

Si desea cambiar la base de formato de fecha en el nivel de tipo de contenido del artículo. Puede editar/agregar el siguiente código post.published_at|date y use un filtro para modificar el formato de la fecha.

nodo–artículo.html.twig

# Here are few example #
date(format='j  F  Y')  # Output = 10 March 2001#
date(format="F j, Y, g:i a")  # Output = March 10, 2001, 5:16 pm#
date(format='m/d/Y')  # Output 10/3/2001 #

Twig usa el mismo código de nombre que el formato de fecha php. Para obtener más información sobre los formatos de fecha de twig, visite: http://twig.sensiolabs.org/doc/filters/date.html

Estoy más a favor de la solución 2 de Chris. Como él dice, ES más la forma de Drupal… pero aún no es la mejor opción.

format_date() ha quedado en desuso y se eliminará antes de Drupal 9… lo que significa que un día, harás una actualización de Drupal y se romperá.

En cambio, es mejor hacer esto en su archivo .theme en una función de preprocesamiento.

function [theme_name]_preprocess_node(&$variables) 
  $variables['date'] = Drupal::service('date.formatter')->format($variables['node']->getCreatedTime(), 'my_custom_format');

Reseñas y calificaciones del tutorial

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : / /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *