fancybox系のyoutubeポップアップ表示には、iframe内容のsrcのurlが必要となる。
しかし、PC系が苦手な人は、このurlの説明と取得作業が難しい。
そのため、youtubeの動画を閲覧している状態から取得できる情報でsrc文字列を作成する
方法が必要となる。
functions.php内に関数を作成する。
function get_youtube_url($youtubeurl) { $youtube_url = null; if(strpos($youtubeurl, "youtu.be")) { // 共有コードを利用する場合 $position_num = strpos($youtubeurl, "youtu.be"); $movie_id = substr($youtubeurl, $position_num + 9, 11); $youtube_url = 'https://www.youtube.com/embed/'. $movie_id .'?rel=0'; } elseif(strpos($youtubeurl, "watch")) { // サイトurlを利用する場合 $position_num = strpos($youtubeurl, "watch?"); $movie_id = substr($youtubeurl, $position_num + 8, 11); $youtube_url = 'https://www.youtube.com/embed/'. $movie_id .'?rel=0'; } elseif(strpos($youtubeurl, "iframe")) { // 埋め込みコードを利用する場合 $position_num = strpos($youtubeurl, "embed/"); $movie_id = substr($youtubeurl, $position_num + 6, 11); $youtube_url = 'https://www.youtube.com/embed/'. $movie_id .'?rel=0'; } elseif(strpos($youtubeurl, "embed")) { // iframeからsrcのurlを利用する場合 $youtube_url = $youtubeurl; } return $youtube_url; }
コードやURLには、11桁の英数字コード以外にもゲット値で受け渡ししてるものがあるので、基準は、英数字コードの前までの文字数を計算し、そこから11桁分の数字を抜き出す形をとると、幸せだと思う。
aタグのhrefにechoやprintで出力