web-dev-qa-db-fra.com

stats_get_csv (statistiques Wordpress) pour afficher uniquement les messages les plus importants (pas les pages)

J'essaie d'obtenir les 10 premiers messages basés sur les pages vues via Wordpress Stats (maintenant appelé Jetpack). J'ai réussi à faire fonctionner ce code (environ ..) après avoir creusé des heures sur les forums (car les variables et le code changeaient de temps en temps):

        <?php
        if ( function_exists('stats_get_csv') && $top_posts = stats_get_csv( 'postviews', "days=10&limit=10")) {
        echo '<ol class="most-viewed">';
          foreach ( $top_posts as $post ) {
            if($post['post_id'] && get_post($post['post_id']))
              echo '<li><a href="' . get_permalink( $post['post_id'] ) . '">' . 
                  get_the_title( $post['post_id'] ) . '</a> (' . number_format_i18n( $post['views']) .' visits)</li>';
          }
          echo '</ol>';
        }
        ?>

Maintenant, je voudrais exclure les pages de cette liste et n’avoir que des publications. Le problème est que l'API WordPress.com Stats n'offre pas de filtre post_type. Je devrais mettre quelque part cette

if ( !isset($post->post_type) || $post->post_type != 'post' )

pouvez-vous m'aider en indiquant où devrais-je l'ajouter?

Merci d'avance! :RÉ

1

Recherchez le type de message avec l'identifiant:

if ( 
    $post['post_id'] 
    && get_post( $post['post_id'] ) 
    && 'post' === get_post_type( $post['post_id'] )
)
2
fuxia