2

*wp_remote_get* は WordPress 関数であり、これを wordpress.stackexchange に投稿する必要があることは知っていますが、私の問題は一般的な PHP 側にあるとほぼ確信しています。

問題:アルバム内で見つかったすべての Vimeo ビデオを取得する必要がありますが、取得できるのは 20 件だけです。

アプローチ:

$vmg_feed_url = 'http://vimeo.com/api/v2/';
$vmg_user = '2212323';
if($vmg_type == 'user'){ /** just an input variable checking whether the function should search for user or for album. in our case, it searches for album **/
    $vmg_type_url = '';
} else {
    $vmg_type_url = $vmg_type . '/';
}
$vmg_videos_url = $vmg_feed_url . $vmg_type_url . $vmg_user . '/videos.xml';
$videos_result = wp_remote_get($vmg_videos_url);
$vmg_videos = simplexml_load_string($videos_result['body']);

結果の XML はhttp://vimeo.com/api/v2/album/2212323/videos.xmlです。ご覧のとおり、20 本のビデオしか取得していません。

質問:何か足りないものはありますか? 取得できるビデオの量に制限を設定する関数/変数はありますか? wp_remote_getがこれらの属性を提供することを知っています ( WordPress Codex から):

$url (文字列) (必須) Universal Resource Locator (URL)。-デフォルト: なし

$args (配列) (オプション) -デフォルト: メソッド: GET、タイムアウト: 5、リダイレクト: 5、httpversion: 1.0、ブロッキング: true、ヘッダー: array()、ボディ: null、cookie: array()

どんな助けでも本当に感謝しています。詳細を忘れていたら教えてください!

4

1 に答える 1

2

あなたの問題はワードプレスや PHP にはありません。それは API の制限です:

http://developer.vimeo.com/apis/simple

シンプルな API レスポンスには、 1 ページあたり最大 20個のアイテムが含まれます。

?page次のリクエストでパラメーターを追加することで、さらに取得できます。

于 2013-05-26T12:11:56.967 に答える