Après l’intégration des types de contenus personnalisés (custom post type) dans la version 3 de WordPress, il est maintenant possible de créer plusieurs contenus dans le même blog. Toutefois, le module « Aujourd’hui » du tableau de bord de WordPress contenant les statistiques de votre blog (articles, commentaires, etc.) n’affiche pas les informations de vos types de contenus. Cela est dommage si vous les utilisez et d’autant plus si vous avez donné accès à votre communauté pour vous aider. Nous allons alors voir comment intégrer ces informations selon les types de contenus que vous avez. Notons qu’il est même possible de personnaliser l’affichage avec les styles par défaut disponible dans les feuilles de styles de l’administration.

Afficher le nombre de certains types de contenus dans votre tableau de bord !

Présentation

Le code présenté a été tout simplement trouvé sur le Codex de WordPress. Il a été modifié pour optimiser le besoin. La possibilité d’avoir les mots aux pluriels est également présente. Nous avons alors trois variables qui nous permettrons d’optimiser l’affiche des nouvelles informations dans le module « Aujourd’hui » du tableau de bord de votre installation WordPress

  • $types // Nous permet simplement de définir le nom du type de contenu.
  • $nbr_ // Le nom du type de contenu au singulier
  • $nbr_s // Le nom du type de contenu au pluriel

La fonction

La fonction ci-dessous est à insérer dans le fichier « functions.php » de votre thème WordPress. Veuillez alors indiquer les variables de vos types de contenus dans les attributs cités plus haut. La fonction affiche également les contenus de vos modules en attentes de relecture.

[php]
add_action(‘right_now_content_table_end’, ‘GkTypes’);

function GkTypes() {
$types = ‘decouvertes’;

if (!post_type_exists( ».$types. »)) {
return;
}
$num_posts = wp_count_posts(  ».$types. » );

$nbr_s = ‘Découvertes’;
$nbr_ = ‘Découverte’;

$num = number_format_i18n( $num_posts->publish );
$text = _n( » . $nbr_ .  »,  » . $nbr_s .  », intval($num_posts->publish) );
if ( current_user_can( ‘edit_posts’ ) ) {
$num = « $num »;
$text = « $text »;
}
echo ‘

‘ . $num . ‘

‘;
echo ‘

‘ . $text . ‘

‘;

echo  »;

if ($num_posts->pending > 0) {
$num = number_format_i18n( $num_posts->pending );
$text = _n(  » . $nbr_ . ‘ en attente’,  » . $nbr_s . ‘ en attentes’, intval($num_posts->pending) );
if ( current_user_can( ‘edit_posts’ ) ) {
$num = « $num »;
$text = « $text »;
}
echo ‘

‘ . $num . ‘

‘;
echo ‘

‘ . $text . ‘

‘;

echo  »;
}
}
[/php]

L’affichage

Le module « Aujourd’hui » s’affiche sur deux colonnes. Si vous avez beaucoup de types de contenus et que vous souhaitez établir un affichage parfait sur deux colonnes, il vous suffit de modifier la variable de « action » de la première ligne disponible dans le code cité plus haut.

Afficher les statistiques de vos types de contenus sur la colonne de gauche (par défaut)
[php]
add_action(‘right_now_content_table_end’, ‘GkTypes’);
[/php]

Afficher les statistiques de vos types de contenus sur la colonne de droite (discussions)
[php]
add_action(‘right_now_discussion_table_end’, ‘GkTypes’);
[/php]

BRANDT Valentin

Créateur de Geekeries.fr. Référentiel de ressources WordPress en Français qui a vu le jour pour la toute première fois en 2007. Je publie régulièrement des plugins, des outils SEO, des ressources et de l'actualités pour améliorer votre expérience avec le CMS WordPress.

Ne manquez pas nos autres contenus :