Description

La différence avec la fonction get_the_terms() est que cette fonction ne met pas ses résultats en cache, elle fera donc appel à la base de donnée à chaque fois.

Paramètres

$post_id

(int) (Optionnel) Id du poste. Ne prend pas par défaut l'id de la global $post.

$taxonomy

(string | string[]) (Optionnel) Slug de la taxonomie ou tableau de slugs de taxonomies auxquelles les termes appartiennent.

Valeur par défaut : 'post_tag'

$args

(array) (Optionnel) Paramètre de la requête des termes. Voir la fonction get_terms() pour les arguments supportés.

  • 'fields'
    (string) Champs de terme à recevoir. Par défaut : 'all'.

Valeur par défaut : array()

Retourne

(array | WP_Error) Tableau d'objets WP_Term si succès ou tableau vide si aucuns termes n'est trouvés. WP_Error si la taxonomie n'existe pas.

Structure de la fonction wp_get_post_terms()

Définie dans le fichier wp-includes/post.php à la ligne 3585 :

function wp_get_post_terms( $post_id = 0, $taxonomy = 'post_tag', $args = array() ) {
    $post_id = (int) $post_id;

    $defaults = array( 'fields' => 'all' );
    $args     = wp_parse_args( $args, $defaults );

    $tags = wp_get_object_terms( $post_id, $taxonomy, $args );

    return $tags;
}

Fonctions utilisées par wp_get_post_terms()

wp_parse_args()

Fusionne des arguments définis par l'utilisateur dans un tableau par défaut.

wp_get_object_terms()

Retourne les termes associés aux ids d'objets donnés, en fournissant les taxonomies correspondantes.

Où trouver la fonction wp_get_post_terms() dans le CMS Wordpress

Exemple

$term_list = wp_get_post_terms( $post->ID, 'my_taxonomy', array( 'fields' => 'all' ) );

$term_list = wp_get_post_terms( $post->ID, 'my_taxonomy', array( 'fields' => 'names' ) );

$term_list = wp_get_post_terms( $post->ID, 'my_taxonomy', array( 'fields' => 'ids' ) );

Sources

Codex Wordpress : wp_get_post_terms()

Autres fonctions dans le même fichier : wp-includes/post.php

Retour