0

Wordpress Stats (現在は Jetpack と呼ばれています) を使用して、ページ ビューに基づいて最初の 10 件の投稿を取得しようとしています。フォーラムを何時間も掘り下げた後、このコードを(およそ..)機能させることができました(変数とコードが時々変更されるため):

        <?php
        if ( function_exists('stats_get_csv') && $top_posts = stats_get_csv('postviews', 'days=-1&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>';
        }
        ?>

ここで、このリストからページを除外して、投稿のみを表示したいと思います。問題は、WordPress.com Stats API が post_type フィルターを提供していないことです。これどこかに置けばいいのに

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

どこに追加すればよいか教えていただけますか?

前もって感謝します!:D

4

1 に答える 1

1

以下で解決:

if ( 
    $post['post_id'] 
    && get_post( $post['post_id'] ) 
    && 'post' === get_post_type( $post['post_id'] )
)
于 2012-11-04T19:35:06.913 に答える