Vos articles récents avec ‘‘ compteur de visite’’ dans le tableau de bord

Publié par Fred Le

Catégorie(s): Tutoriel Wordpress
 

Nous allons voir comment ajouter un widget  pour afficher les articles récents avec un compteur de visite dans le tableau de bord de WordPress de votre thème. Se widget recueillera  le nombre de visite sur vos articles récents  vous pourrez personnaliser le nombre d’articles à afficher ainsi qu’une catégorie précise si vous le désirez.


 

Le code ci-dessous est à insérer dans le fichier function.php de votre thème il va afficher le widget dans le tableau de bord :

// déclaration  et affichage du widget sur le tableau de bord

function wps_recent_posts_count() {

?>

<ol>

<?php

global $post;

$args = array(  'cat' => 0,   

                'order' => 'DESC',

                'post_type' => 'post',

                'post_status' => 'publish', 

                'posts_per_page' => 0,

                'caller_get_posts'=> 1 );

$myposts = get_posts( $args );

           foreach( $myposts as $post ) :  setup_postdata($post); ?>

           <li><?php echo'Dans la catégorie';?> : <strong><?php the_category(' '); ?></strong> -

           <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php printf(the_title()); ?>"><?php the_title(); ?> </a>

           | <?php echo '<em>' ; ?><?php echo getPostViews (get_the_ID ());?> <?php echo 'Lecture(s)' ; ?><?php echo '</em>' ; ?></li>

           <?php endforeach; ?>

           </ol>

<?php

}

function add_wps_recent_posts_count() {

          wp_add_dashboard_widget( 'wps_recent_posts_count', __( 'Articles récents avec compteur de visite' ), 'wps_recent_posts_count' );

}

add_action('wp_dashboard_setup', 'add_wps_recent_posts_count' );

// fin affichage widget

Vous pouvez remplacer lecture(s) par visite(s) ou un autre texte de votre choix. Pour changer la catégorie indiquer son ID numérique exemple  : ‘cat’ => 5  laissé sur 0 pour afficher toutes les catégories.

Pour changer le nombre d’articles à afficher  changer la valeur de ‘posts_per_page’ =>  5 par exemple laissé sur 0 pour afficher tous les articles.

Le deuxième code ci-dessous va servir à comptabiliser le nombre de visite, a insérer dans le fichier function.php de votre thème :

// fonction compteur de visite 

function getPostViews($postID){

    $count_key = 'post_views_count';

    $count = get_post_meta($postID, $count_key, true);

    if($count==''){

    delete_post_meta($postID, $count_key);

    add_post_meta($postID, $count_key, '0');

    return "0";

 }

    echo '<strong>' ;

    echo $count ;

    echo '</strong>' ;

}

function setRecentViews($postID) {

$count_key = 'post_views_count';

$count = get_post_meta($postID, $count_key, true);

  if($count==''){

  $count = 0;

  delete_post_meta($postID, $count_key);

         add_post_meta($postID, $count_key, '0');

   }else{

  $count++;

       update_post_meta($postID, $count_key, $count);

    }

}

// fin compteur

Maintenant insérer la ligne suivante dans votre fichier single.php dans la boucle, se bout de code permettra de récupéré le nombre de visite sur chaque articles.

<?php setRecentViews (get_the_ID ());?>

Si vous désirez affichez le nombre de visite a vos lecteurs il suffi d’ajouter le code suivant toujours dans la boucle :

<p><?php echo getPostViews (get_the_ID ());?> <?php echo 'visite(s)'; ?></p>

Vous avez aussi la possibilité de créer plusieurs boucles dans le widget pour afficher des articles de plusieurs catégories différente.

Mots clés: ,





Laisser un commentaire

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Pour affiché du code HTML, CSS, PHP, JAVASCRIPT utilisé le marqueur : [code][/code]