web-dev-qa-db-ja.com

先週のトップ3の投稿、FacebookとTwitterのシェア数

私は先週のトップ3の記事をFacebookとTwitterの合計株数に基づいて表示することに興味があります。これらのシェア数は、'orderby' => 'comment_count'を使用してコメント数でソートするのと比較して、人気のあるもののより有用な指標であることがわかりました。

だから私の質問は:FacebookやTwitterのシェアの数に基づいて投稿を並べ替えるための最良の方法は何ですか?先週、すべての投稿のシェア数を確認してそこから移動するのであれば、FacebookおよびTwitter APIへのリクエスト数について少し心配しています。前もって感謝します!

2
epaps

これは多面的な質問ですが、多面的な答えになっています。

  • Facebookのカウントを取得するには、 https://graph.facebook.com/URL にリクエストを送信します。これは、とりわけ、 "シェア"の数を含むJSONオブジェクトを返します。

これを書いている時点で4株を保有している実施例: https://graph.facebook.com/http://ottopress.com/2011/wp-quickie-adding-chrome-voice-search/

私が文書化していないことの1つは、コールバックパラメータを空白のままにしておくと、JSONPコールバックのものなしでjsonオブジェクトが返されることです。

これを書いている時点で29のTwitterのカウントを持つ実用的な例: http://urls.api.Twitter.com/1/urls/count.json?callback=&url=http://ottopress.com/ 2011/wp-quickie-added-chrome-voice-search /

  • これらのURLを取得したので、各投稿について定期的に(おそらく先週)それらを取得し、そのデータをpostmetaフィールドに格納するための関数をいくつか書く必要があります。有効期限には、wp-cronジョブまたはトランジェントを使用できます。どちらにしても。

データを取得して、問題の各投稿のpostmetaに保存したら、それに基づいて選択することは、投稿クエリでmeta_keyをorderby = meta_value_numパラメータと共に使用することです。これにより、投稿を選択して、postmetaに保存している値で並べ替えることができます。

4
Otto

あなたは暦週かローリングウィーク(前の7日間)を意味しますか?何件の投稿を話していますか。

私はこのようなことを試してみたい:

  1. Wp-cronタスクを作成してください。
  2. Cronで、時間枠の表示に適していて、欠落/期限切れの統計情報がある投稿を選択します。
  3. APIを照会し、統計とチェック時間(前の手順で統計が古くなっているかどうかを確認するため)をカスタムメタフィールドに保存します。
  4. フロントエンドでの検索を希望し、統計カスタムフィールドでソートします。

これは多くの方法のうちの1つにすぎません。APIを強調する可能性に大きく依存します。使用可能な要求が早くなくなるほど、考慮して実装する必要があるロジックとキャッシュが増えます。

0
Rarst