Les deux fonctions renvoient la date et l'heure. Quelle est la différence entre eux? Avez-vous des exemples? Merci.
Ils sont très similaires mais avec quelques nuances:
function get_the_date( $d = '' ) {
global $post;
$the_date = '';
if ( '' == $d )
$the_date .= mysql2date(get_option('date_format'), $post->post_date);
else
$the_date .= mysql2date($d, $post->post_date);
return apply_filters('get_the_date', $the_date, $d);
}
function get_the_time( $d = '', $post = null ) {
$post = get_post($post);
if ( '' == $d )
$the_time = get_post_time(get_option('time_format'), false, $post, true);
else
$the_time = get_post_time($d, false, $post, true);
return apply_filters('get_the_time', $the_time, $d, $post);
}
get_the_date()
fonctionne toujours pour le $post
global actuel, get_the_time()
vous permet de spécifier post comme argument.
Ils utilisent par défaut différents formats, stockés dans les options date_format
et time_format
, respectivement.
Ils transmettent la sortie à travers différents filtres get_the_date
et get_the_time
plus un niveau inférieur get_post_time
respectivement.
La balise de modèle the_date()
affiche uniquement la date de publication une fois par occurrence; ainsi, si deux publications ou plus ont la même date de publication, cette date n’est sortie qu’à sa première apparition dans la boucle. La balise de modèle the_time()
génère l'heure de publication (en utilisant une chaîne de date/heure valide), comme d'habitude.
Les balises de modèle get_the_date()
et get_the_time()
sont toutefois essentiellement les mêmes. Ils sont utilisés pour renvoyer les valeurs respectives pour the_date()
et the_time()
. Conformément au Codex :
Contrairement à
the_date()
cette balise sera retournera toujours la date. Modifiez la sortie avec le filtre 'get_the_date'.
Ainsi, la différence ne réside pas dans les balises de modèle get_the_*()
elles-mêmes, mais dans les balises de modèle the_*()
qui les utilisent.