Youtube API (PHP) – как добавить (существующее) видео в существующий плейлист?

Я использую API Youtube для загрузки некоторого видео, но я не могу понять, как добавить загруженное видео в определенный плейлист. Я искал по всему Google, и я вообще не нашел никакой помощи.

Я прочитал руководство для разработчиков, и я нашел это – https://developers.google.com/youtube/2.0/developers_guide_php#Adding_a_Playlist_Video , но я не знаю, как определить, какое видео, в котором существующий плейлист я хочу добавить скрипт.

Это то, что я использую сейчас для загрузки видео:

require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata_YouTube'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); $developerKey = 'MYDEVKEY'; $applicationId = 'SOMEID'; $authenticationURL= 'https://www.google.com/accounts/ClientLogin'; $httpClient = Zend_Gdata_ClientLogin::getHttpClient( $username = 'user', $password = 'pass', $service = 'youtube', $client = null, $source = 'something', $loginToken = null, $loginCaptcha = null, $authenticationURL); $clientId = 'something'; $yt = new Zend_Gdata_YouTube($httpClient, $applicationId, $clientId, $developerKey); $videoName = "video/user_12345.mov"; $myVideoEntry = new Zend_Gdata_YouTube_VideoEntry(); $filesource = $yt->newMediaFileSource($videoName); $filesource->setContentType('video/quicktime'); $filesource->setSlug('video/test.mov'); $myVideoEntry->setMediaSource($filesource); $myVideoEntry->setVideoTitle('Video title'); $myVideoEntry->setVideoDescription('Video description'); $myVideoEntry->setVideoCategory('Autos'); $myVideoEntry->SetVideoTags('car'); $uploadUrl ='https://uploads.gdata.youtube.com/feeds/users/default/uploads'; $newEntry = $yt->insertEntry($myVideoEntry, $uploadUrl, 'Zend_Gdata_YouTube_VideoEntry'); $state = $newEntry->getVideoState(); $idv = $newEntry->getVideoId(); 

Код в документе, к которому вы привязаны, дает вам отправную точку:

 $postUrl = $playlistToAddTo->getPlaylistVideoFeedUrl(); // video entry to be added $videoEntryToAdd = $yt->getVideoEntry('4XpnKHJAok8'); // create a new Zend_Gdata_PlaylistListEntry, passing in the underling DOMElement of the VideoEntry $newPlaylistListEntry = $yt->newPlaylistListEntry($videoEntryToAdd->getDOM()); // post try { $yt->insertEntry($newPlaylistListEntry, $postUrl); } catch (Zend_App_Exception $e) { echo $e->getMessage(); } 

Вместо 4XpnKHJAok8 в этом примере вы хотите передать идентификатор нового видео, то есть значение $idv в вашем скрипте.

Этот код предполагает, что у вас уже есть объект $ playlistToAddTo, но у вас, вероятно, будет ID списка воспроизведения. Вы можете изменить его, чтобы читать

 $postUrl = sprintf('https://gdata.youtube.com/feeds/api/playlists/%s?v=2', $playlistId); 

где $playlistId – это идентификатор плейлиста, к которому вы хотите добавить видео.