web-dev-qa-db-fra.com

Quelle est la différence entre get_the_time et get_the_date?

Les deux fonctions renvoient la date et l'heure. Quelle est la différence entre eux? Avez-vous des exemples? Merci.

6
thom

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);
}
  1. get_the_date() fonctionne toujours pour le $post global actuel, get_the_time() vous permet de spécifier post comme argument.

  2. Ils utilisent par défaut différents formats, stockés dans les options date_format et time_format, respectivement.

  3. Ils transmettent la sortie à travers différents filtres get_the_date et get_the_time plus un niveau inférieur get_post_time respectivement.

10
Rarst

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.

2
Chip Bennett