0

さて、ワードプレス用のvimeoベースのビデオブログテーマに取り組んでいて、(カスタムフィールドを介して)各ビデオアップデートに埋め込みコードを貼り付けるように人々に怠惰に頼むのではなく、ユーザーがビデオIDだけを提供したいです...基本的に私は各ビデオが同じ高さ/幅になることを保証できないので、iframeの高さ/幅をハードコーディングするのではなく(ユーザーに提供させるのではなく)vimeoから直接埋め込みコードを取得しようとしています(テーマはレスポンシブになり、小さなjqueryスクリプトを使用してビデオのサイズをその場で変更します)

これまでのところ、Vimeo独自のAPIの例を食いつぶそうとしたので、次のようになりました。

function curl_get($url) {
    $curl = curl_init($url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_TIMEOUT, 30);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
    $return = curl_exec($curl);
    curl_close($curl);
    return $return;
} 

// Create the URL
$oembed_vid_id = get_field('video_embed_code');
$oembed_url = 'http://vimeo.com/api/v2/video/' . $oembed_vid_id . '.xml';

// Load in the oEmbed XML
$oembed = simplexml_load_string(curl_get($oembed_url));
$embed_code = html_entity_decode($oembed->html);

<?php echo $embed_code ?>

しかし、私は何も返されません、私は非常に基本的な何かを見落としましたか?

$ oembed_url URLが存在することを確認できます。任意のvimeoidを試してみると、関連するxmlが表示されます。つまり、vimeoから取得したビデオを次に示します。

http://vimeo.com/api/v2/video/48198301.xml

サムネイルなどをプルダウンして、xmlファイルに隠されている他のすべての素敵な情報を利用できるので、これを理解できれば素晴らしいと思います。

4

1 に答える 1

1

Vimeoのサンプルコードから、適切なAPIを使用していないようです。

http://vimeo.com/api/v2/video/ビデオ情報フィールドを返しますが、フィールドはありませんhtml。埋め込みコードを取得するには、次のURLを使用します。

$oembed_url = 'http://vimeo.com/api/oembed.xml?url=' . urlencode("http://vimeo.com/$oembed_vid_id");
于 2012-09-10T16:28:43.210 に答える