WordPress : Un module « Articles Similaires » sans plugin !

Voici une petite astuces wordpress pour mettre en place un module « Articles Similaires » sur votre blog. Ce module propose a vos visiteurs plusieurs articles lié à sa lecture actuelle. Vous lui faites découvrir d’autres articles ce qui peut l’aider dans la navigation de votre blog. Un module comme celui-ci permet également de lier les articles entre eux, selon les mêmes tags directement dans la page de l’article. Si votre a par exemple un succès fou, les articles similaires proposé pourront l’être aussi.

Beaucoup d’astuces de ce genre circulent sur les blogs, mais ils ne fonctionnent tout simplement pas. Le problème est lié à la boucle qu’on ouvre ; Cette boucle n’étant pas fermée, tout ce qui suit les articles similaires, comme les commentaires par exemple, seront mélangés. Les commentaires ne seront plus liés à l’article en question. Étrange fonction qui n’a pas encore d’utilité !

Le code et les paramètres

Le code en lui-même est très simple et facile à comprendre. Nous allons utiliser les tags de l’article en cours de lecture pour afficher les articles liés à celui-ci. Concernant l’affichage des articles, plusieurs paramètres sont disponibles. Vous pouvez afficher par exemple les articles similaires par titres, par date, par auteur, par date de modification par ID et aléatoirement. Pour cela il vous suffit de modifier la valeur « orderby ».

Si vous souhaitez supprimer cette valeur optionnelle, vous pouvez. La dernière ligne de ce code permet simplement de fermer définitivement les boucles de WordPress et donc de retourner à l’affichage normal. J’ai commenté quelques lignes pour mieux comprendre.

[php]

    est l’ordre d’affichge */
    $backup = $post;
    $tags = wp_get_post_tags($post->ID);
    $tagIDs = array();
    if ($tags) {
    $tagcount = count($tags);
    for ($i = 0; $i < $tagcount; $i++) { $tagIDs[$i] = $tags[$i]->term_id;
    }
    $args=array(
    ‘tag__in’ => $tagIDs,
    ‘post__not_in’ => array($post->ID),
    ‘showposts’=>7,
    ‘orderby’=>rand /* author – date – title – modified – parent – ID – rand */
    );
    $my_query = new WP_Query($args);
    if( $my_query->have_posts() ) {
    while ($my_query->have_posts()) : $my_query->the_post(); ?>

  • Publié à l'origine le : 9 juin 2009 @ 18 h 45 min

Pour compléter votre lecture.

👋 Hello,

Bienvenue sur BlogInfos.com !

Vous allez bientôt être redirigé vers notre partenaire ElegantThemes.com

Si vous ne souhaitez pas être redirigé vers notre partenaire et accéder à l’article, cliquez sur Fermer Maintenant.

FERMER MAINTENANT

DIVI - THÈME WORDPRESS

-10%

👋 Le site ElegantThemes.com propose une réduction de 10% et elle ne sera disponible que pendant quelques temps. Ne manquez pas ça !

En cliquant sur le lien « Fermer Maintenant » vous acceptez d’aider ce site et d’être redirigé vers notre partenaire ElegantThemes.