Paramètres

$userid(int)requis

Id de l'utilisateur.

$post_type(array|string)optionnel

Type de poste unique ou tableau de types de poste.

Valeur par défaut : 'post'

$public_only(bool)optionnel

True si la fonction doit seulement retourner les postes publiques.

Valeur par défaut : false

Retourne

(string) Nombre de postes qu'un utilisateur a écrit dans un type de poste donné.

Déclaration et structure de la fonction count_user_posts()

function count_user_posts( $userid, $post_type = 'post', $public_only = false ) {
    global $wpdb;

    $where = get_posts_by_author_sql( $post_type, true, $userid, $public_only );

    $count = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->posts $where" );

    /**
     * Filters the number of posts a user has written.
     *
     * @since 2.7.0
     * @since 4.1.0 Added `$post_type` argument.
     * @since 4.3.1 Added `$public_only` argument.
     *
     * @param int          $count       The user's post count.
     * @param int          $userid      User ID.
     * @param string|array $post_type   Single post type or array of post types to count the number of posts for.
     * @param bool         $public_only Whether to limit counted posts to public posts.
     */
    return apply_filters( 'get_usernumposts', $count, $userid, $post_type, $public_only );
}
apply_filters()

Appel les fonctions qui ont été attaché à un filtre (hook).

get_posts_by_author_sql()

Reçoit la requête SQL du poste basé sur la capacité du poste, l'id de l'utilisateur et le type du poste.

get_usernumposts

Filtre le nombre de postes qu'un utilisateur a écrit.

Où est utilisée la fonction count_user_posts() dans le CMS WordPress

Exemple

count_user_posts( 5 );

count_user_posts( 5 , 'book' )

Sources

Codex WordPress : count_user_posts()

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

Retour