X

Shortcode para mostrar la fecha en WordPress

En un artículo anterior habíamos visto cómo crear un shortcode en WordPress, en este artículo veremos cómo aplicar esta funcionalidad para mostrar la fecha actual como parte del contenido o cualquier otra sección de tu sitio.

 

Resultado Final

Al final tendrás un shortcode que puedes usar en diferentes partes de tu sitio, tal como se ve en la siguiente imagen:

 

Código para la creación del shortcode

El shortcode que creamos tendrá el nombre de current_date, acepta un atributo llamado format que es opcional. Si el shortcode no tiene el atributo format, tomará por defecto la configuración de fecha de WordPress.

add_action( 'init', 'dcms_add_shortcode_date' );

function dcms_add_shortcode_date(){
	add_shortcode('current_date', 'dcms_create_current_date');
}

function dcms_create_current_date( $atts, $content ){
	$atts = shortcode_atts(
				['format' => get_option('date_format')],
				$atts, 'current_date');
	$str = date_i18n($atts['format']);
	return $str;
}
Puedes agregar este código al final de tu archivo functions.php de tu tema hijo.

En el código anterior:

  • Usamos el Hook init que hace referencia a la función dcms_add_shortcode_date()
  • La función creará el shortcode llamado current_date y hará referencia a la función dcms_create_current_date()
  • Dentro de esta función buscamos si tenemos el atributo format
  • Por defecto será el formato de fecha de WordPress que obtenemos con la función get_option()
  • Para recuperar la fecha actual localizada usamos la función date_i18n() con el formato como parámetro
  • Finalmente devolvemos la cadena de fecha

El atributo format esta basado en la función date() de PHP, puedes ver que igualmente lo usan en la función date_i18n() de WordPress

 

Usos del shortcode

  • La forma básica
    [current_date]
  • Formato día mes año
    [current_date format="d-m-Y"]
  • Formato sólo año
    [current_date format="Y"]
  • Formato con hora
    [current_date format="d-m-Y h:i:s a"]
  • Formato con texto «de» escapado con \\
    [current_date format="l d \\d\\e  F \\d\\e\\l  Y"]

Los valores para el atributo formato siguen las mismas reglas que la función date() de PHP

 

Conclusión

Si necesitas por alguna razón mostrar la fecha completa o parte de la fecha en tu sitio web, puedes usar el shortcode y configurar el formato de acuerdo a tus necesidades.

 

Categorías: Core
Etiquetas: funcionalidad

Ver comentarios (8)