私はYouTubeでプライベートプレイリストを作成しようと必死になっています。パブリックプレイリストを作成するのは問題ありません。ドキュメントは非常に優れています。しかし私はinstructionsをコードに「翻訳」することができません。Zendを使ってYouTubeにプライベートプレイリストを作成する
あなたは プレイリストのタイトル、説明、または プライベート/パブリック・ステータスを更新するためにAPIを使用することができます。 プレイリストを更新するには、そのプレイリストのPlaylistListEntry オブジェクトを変更し、オブジェクトの保存メソッド を呼び出します。
マイコード:
$httpClient = isset($_SESSION['sessionToken'])? Zend_Gdata_AuthSub::getHttpClient($_SESSION['sessionToken']) : null;
$this->youtube = new Zend_Gdata_YouTube($httpClient, "CompanyName-AppName-0.1", null, $this->apikey);
// ...
$yt = $this->youtube;
$newPlaylist = $yt->newPlaylistListEntry();
$newPlaylist->description = $yt->newDescription()->setText('My Description');
$newPlaylist->title = $yt->newTitle()->setText('My Title');
$postLocation = 'http://gdata.youtube.com/feeds/api/users/default/playlists';
try {
$yt->insertEntry($newPlaylist, $postLocation);
} catch (Zend_Gdata_App_Exception $e) {
echo $e->getMessage();
}
最後の部分はドキュメントから多かれ少なかれサンプルコードです。素晴らしいですが、プレイリストは公開されています。
私が理解しているところでは、$newPlaylist
はPlaylistListEntry
のインスタンスなので、非公開にする必要があります。私はオブジェクトソースコード(とその9,000以上の親オブジェクト)とget_class_methods
の出力を調べましたが、プライベートにする方法はありませんでした。また、プライベート/パブリックメンバーをtrue/falseに設定しようとしても役立たず、エラーメッセージが表示されます(そのようなメンバーはいないと言います)。
私はYouTube APIとZendの経験はあまりありません。誰かが私を助けてくれたら本当に感謝しています。
私がプレイリストをプライベートにするのは、<yt:private />
というタグをリクエストに追加して読むことができます。これはかなりシンプルに聞こえるかもしれませんが、手動でリクエストに追加する方法がありますか?
これを行う方法を知りましたか?私は同じことをしようとしており、どこでも何も見つけることができません! – igneosaur
@igneosaurいいえ、残念ながらそうではありません。しかし、私はそのポストの後にはあまり試していない。 – svens