[Résolu] Afficher une liste des 6 articles les plus populaires (Créer un compte)

  • WordPress :4.6.1
  • Statut : résolu
  • Ce sujet contient 3 réponses, 2 participants et a été mis à jour pour la dernière fois par shady77, le il y a 4 années.
4 sujets de 1 à 4 (sur un total de 4)
  • Auteur
    Messages
  • #1600462
    shady77
    Participant
    Initié WordPress
    8 contributions

    Ma configuration WP actuelle

    • Extensions en place : <b>WP-PostViews</b>
    • Nom de l’hébergeur : VPSHOST
    • Adresse du site : editioncollector.fr

    Problème(s) rencontré(s) :

    Bonjour à tous,

    Je souhaite afficher sur mon blog une liste des 6 articles les plus populaire. J’utilise le plugin WP-PostViews qui compte le nombre de vu pour chaque post, mais je n’arrive pas à l’utiliser avec une query pour afficher les post les plus populaires :/

    <?php 
    		$args = array( 
    		'post_type' => 'collector',
    		'posts_per_page' => 6,
                    'meta_key' => 'post_views',
                    'orderby' => 'meta_value',
                    'order' => 'DESC'
    		);
    		$the_query = new WP_Query( $args ); ?>
    	<?php if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>

    J’utilise déjà une query pour afficher les 6 derniers post, mais même en ajoutant la meta key views cela ne fonctionne pas. Un petit coup de pouce serait vraiment super, parce que là je sais plus quoi faire et je commence a me demander si je m’y prend comme il faut ? :/

    #1600495
    sebastienserre
    Gestionnaire du forum
    Maître WordPress
    815 contributions

    Bonjour,

    Apparemment, selon la faq de l’extension, pas besoin de Query. C’est expliqué ici

    To Display Most Viewed Posts
    Utilisation :
    <?php if (function_exists('get_most_viewed')): ?>
        <ul>
            <?php get_most_viewed(); ?>
        </ul>
    <?php endif; ?>
    The first value you pass in is the post type that you want. If you want to get every post types, just use 'both'. It also supports PHP array: example array('post', 'page').
    The second value you pass in is the maximum number of post you want to get.
    Default: get_most_viewed('both', 10);

    #1600538
    shady77
    Participant
    Initié WordPress
    8 contributions

    oui merci j’ai vu, et c’est vrai que j’ai pas précisé que je souhaite avoir un peu plus qu’une simple liste avec le titre et une image d’ou la query, car avec la fonction ça me parait trop compliqué a modifier. Voilà ma page ou je teste ça sur mon site

    Sinon a force de chercher je suis tombé sur ce topic d’une personne qui a exactement le même probleme que moi, mais visiblement même avec la version qui a finit par fonctionner chez lui, moi ça marche toujours pas :/

    Voilà ma dernière inspiré de ce topic, mais visiblement de mon coté le orderby ne fonctionne pas…

    <?php rewind_posts(); ?>
    	<?php $viewed = new WP_Query(array( 
    		'post_type' => 'collector',
    		'order' => 'DESC',
    		'orderby' => 'meta_value',
    		'meta_key' => 'views',
    		'posts_per_page' => 6
    		)); ?>
    <?php if ($viewed->have_posts()) : while ($viewed->have_posts() ) : $viewed->the_post(); ?>

    #1600554
    shady77
    Participant
    Initié WordPress
    8 contributions

    J’ai fini par trouvé pourquoi le orderby de ma query ne fonctionné pas ! En fait j’utilise également le plugin Post Types Order qui écrase automatiquement toutes les query pour imposer son orderby a lui… en fait il y a une option dans le plugin pour désactiver ça ^^

    Aussi il faut choisir ‘meta_value_num’ en orderby sinon il tri alphabétiquement (999, 99, 981, 98, 975, etc)

4 sujets de 1 à 4 (sur un total de 4)
  • Vous devez être connecté pour répondre à ce sujet.