[AUTOMATIQUE] Cet article a plus de 5 ans.
Il se peut donc que les informations qu'il fournit ne soient plus totalement exactes.
Il se peut donc que les informations qu'il fournit ne soient plus totalement exactes.
Voilà un petit snippet bien utile et simple de mise en place. Il permet tout simplement de compter le nombre de posts publiés par un utilisateur. Vous pouvez choisir quel Posts Type prendre en compte (cf commentaire dans le code).
Notez que cette fonction compte un paramètre, il s’agit de l’ID de l’utilisateur dont on veut connaitre le compteur de posts.
Par exemple, pour afficher le nombre de posts d’un auteur (ID 1) à la fin d’un article il faut faire :
<?php echo count_post_all_types (1); ?>
Autre exemple si on veut que l’utilisateur authentifié connaisse le nombre de post qu’il a publié :
<?php echo count_post_all_types (get_current_user_id()); ?>
Le code PHP à coller dans functions.php de son thème:
//fonction pour compter le nombre de posts d'un user function count_post_all_types ($user_ID){ global $wpdb; if(empty($user_ID)) return 0; //on sélectionne bien tous les types de contenus voulus $post_type = array('post', 'TYPE_DE_CONTENU_SUP1', 'TYPE_DE_CONTENU_SUP2'); $sql = $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->posts WHERE post_author = %d AND post_status = 'publish' AND ", $user_ID ); //Inclure les CPT dans la requête if(!empty($post_type)){ $argtype = array_fill(0, count($post_type), '%s'); $where = "(post_type=".implode( " OR post_type=", $argtype).') AND '; $sql .= $wpdb->prepare($where,$post_type); } $sql .='1=1'; return $count_p = $wpdb->get_var($sql); }
Bonjour
Un grand merci pour ce bout de code qui me simplifie les choses
j’ai pu afficher le nombre de posts par utilisateur et j’aurai besoin d’avoir le décompte par utilisateur et par catégorie en même temps
autrement dit avec un résultat par utilisateur du type : articles = 10 / Témoignage = 2 …
Pourriez vous s’il vous plait m’aider, car cela devient un peux compliqué pour moi
Merci d’avance pour ce que vous pourrez faire
Manuel