web-dev-qa-db-ja.com

Jetpackによるビューによる人気の投稿

私は各ブログ投稿のビュー数を取得するためにJetpackを使用しています。これを使用して最も閲覧数の多い投稿への電話をかけ、それらを一覧表示する方法はありますか?

私は長い間それをしたいと思っていて、私はさまざまなプラグインを調べました、しかし私はこれをハードコーディングすることを好みます。 Jetpackが提供するビューカウントを利用できるようにコードを書く方法はありますか?

私はここで同様の質問を見ました、しかし、それらのどれも答えられませんでした。少数のコメンターがプラグインを提案しましたが、それらは今では見捨てられました。最新の情報が見つかりませんでした。

今のところ私はsingle.phpの中の "view count"をそのように呼ぶだけです:

<?php print_page_views(get_the_ID('')); ?> 

そのためには、Jetpackが必要な「Post 'n Page Views」というプラグインを使用しています。 Wordpress Dabataseでプラグインを探してみましたが、もう存在していないようです。

私は本当にこれに関するどんな種類のアドバイスまたは最新の情報にも感謝するでしょう。どうもありがとうございます!

1
japanworm

Top Posts and Pages (Jetpack)というJetpackウィジェットがあります。

enter image description here

このウィジェットの[ソースコード] [2]をチェックすると、統計を取得するためにstats_get_csv()関数を使っていることがわかります。

$post_view_posts = stats_get_csv( 'postviews', array( 'days' => 2, 'limit' => 10 ) );

あなたがあなたのカスタム最もポピュラーなリストを生成したいなら、あなたは例えば以下を使うことができます:

if(function_exists('stats_get_csv')){
        $popular = stats_get_csv( 'postviews', array( 'days' => 2, 'limit' => 10 ) );
        echo '<ol>';
        foreach ( $popular as $p ) {
                printf('<li><a href="%s">%s</a>(%d)</li>', $p['post_permalink'], $p['post_title'], $p['views'] );
        }
        echo '</ol>';
} 

関数stats_get_csv( $table, $args = null )は次のように定義されています。

http://plugins.trac.wordpress.org/browser/jetpack/tags/2.2.6/modules/stats.php

データの取得元

http://stats.wordpress.com/csv.php

stats_get_csvが5分間データをキャッシュしていることに注意してください。

stats_get_csvが出力する内容とAPIの説明の例については、 こちらの素晴らしい回答 をご覧ください。

8
birgire