ここでは、「YouTube動画の再生終了後にリダイレクトで別のページに自動的に移動させる」という仕組みの実例と、その仕組みをカスタマイズしてつかう方法をお話します。
下は、この仕組みの実例です。YouTube動画を最後まで再生すると、それと同時にリダイレクトで別のページに飛ばされます。(話をわかりやすくするために、動画は50秒ほどの短いものにしています。)
これによって、「動画を最後まで見た人をあらかじめ設定しておいたページに自動的に移動させることができる」という仕組みをつくることができます。
下の実例の上部の「HTML」タブを押すと、この仕組みのソースコード(HTML、JavaScript、CSS)を見ることができます。
See the Pen
YouTubeEndPointRedirect by 倉田幸暢 (@yukinobukurata)
on CodePen.
上の実例の上部のメニューバーのなかのタブやボタンの内容は、つぎのとおりです。
「HTML」タブ: この仕組みのソースコード(HTML、JavaScript、CSS)のパネルを表示(または非表示)させる。
「Result」タブ: この仕組みのソースコード(HTML、JavaScript、CSS)を実行したときのウェブページの状態を再現したパネルを表示(または非表示)させる。
ソースコードのダウンロードは、こちらをクリック。(GitHubのリポジトリ)
動画マーケティングに応用する方法
動画を最後まで見た後、視聴者の操作を待たずにリダイレクトで自動的に、セールスレターや、オプトインページなどに移動させたいという場合に、この仕組みをつかうといいでしょう。
誰でもかんたんにつかえるように、設定項目はできるだけわかりやすくしました。
興味があれば、ぜひこの仕組みをつかってみてください。
カスタマイズして自分用に使う方法(ソースコードの解説)
基本的な設定項目
//★ユーザー用の設定項目 //★動画プレーヤーの横幅と縦幅を設定する(ピクセル数)。 //横幅 var videoWidth = 530; //縦幅 var videoHeight = 298; //★表示させるYouTube動画の「動画ID」を設定する。 var youtubeVideoID = "Xye1sEOG0CA"; //★リダイレクトさせる移動先のページのURLを設定する。 var redirectUrl = "https://commons.wikimedia.org/wiki/File:USMC-110917-M-VF198-019.jpg"; //★リダイレクト先のページを新しいウィンドウ(新しいタブ)で開くか、 // 同じページ内で開くかを設定する //新しいウィンドウ(新しいタブ)で開く「1」 / 同じページ内で開く「0」 var redirectTargetBlank = 0;
動画プレーヤーの横幅と縦幅については、つぎのとおりです。
「var videoWidth = 530;」の「530」のところに、横幅をいれてください。
「var videoHeight = 298;」の「298」のところに、縦幅をいれてください。
表示させるYouTube動画については、「var youtubeVideoID = "Xye1sEOG0CA";」の「Xye1sEOG0CA」のところに、表示させたいYouTube動画の「動画ID」をいれてください。
YouTube動画の「動画ID」というのは、YouTube動画の個別視聴ベージのURLのなかの「v=***********」という部分の「***********」の英数字のことです。
下の例でいうと、「Xye1sEOG0CA」という部分が、「動画ID」です。
YouTube動画の個別視聴ベージのURLの例
https://www.youtube.com/watch?v=Xye1sEOG0CA&feature=player_embedded
リダイレクトさせる移動先のページのURLについては、「var redirectUrl = "https://*****";」の「https://*****」のところに、移動先のページのURLをいれてください。
リダイレクト先のページを新しいウィンドウ(新しいタブ)で開くか、同じページ内で開くかについては、「var redirectTargetBlank = 0;」の「0」を「1」にすれば、新しいウィンドウ(新しいタブ)で開き、「0」にすれば、同じページ内で開きます。
YouTube動画プレーヤーの「パラメータ」
YouTubeの動画プレーヤーの「パラメータ」については、下記でご説明している「playerVars:」についての記述の部分で設定できます。「パラメータ」というのは、YouTube動画の埋め込みプレーヤーの見た目や機能をカスタマイズするための機能です。
たとえば、「パラメータ」を付けることで、下記のようなこともできます。
- 自動的に再生をはじめる。
- コントロールバーを非表示にする。
- プログレスバー(シークバー)を非表示にする。
- タイトルバーを非表示にする。
- 全画面表示ボタンを非表示にする。
- 動画全体のなかの一部分だけを再生する。
(再生を開始する時点と、再生を終了する時点を指定する。) - 複数の動画を連続して再生させる。
- すべての動画の再生が終わったら、また最初の動画にもどってそれを繰り返す。
それぞれの機能を実現するための「パラメータ」の使い方や実例などの
くわしい説明については、下記の記事を参照してください。
参考:YouTube動画の22のパラメータまとめ+αと埋め込みコードの実例
下記の例でいうと、「'modestbranding': 1」や、「'rel': 0」の部分が、それぞれ個々の「パラメータ」です。
個々の「パラメータ」の後ろには必ず「,」(半角のカンマ)をつけてください。
これを付けないと正常に機能しなくなってしまいます。(最後の「パラメータ」の後ろには「,」は不要です。)
//設定をおこなう「パラメータ」 playerVars: { //左の値は「パラメータの名前」。 //右の値は「パラメータの値」。 'modestbranding': 1, 'controls': 1, 'showinfo': 0, 'rel': 0 },
上記の例のなかの各パラメータの詳細については、下のそれぞれのリンクをクリックして確認してください。
- コントロールバーのYouTubeロゴを非表示にする - 「modestbranding」(モデストブランディング)
- コントロールバーを非表示にする/表示する - 「controls」(コントロールズ)
- タイトルバーを非表示にする - 「showinfo」(ショウインフォ)
- 再生後に表示される「関連動画」を非表示にする - 「rel」(リレイテッドビデオ)
「IFrameプレーヤーAPI」について
上の実例では、「IFrameプレーヤーAPI」の仕組みを利用して、JavaScriptをつかって、YouTubeの動画プレーヤーを制御しています。
「IFrameプレーヤーAPI」は、HTML5の<iframe>タグをつかって動画プレーヤーを表示させるようになっているので、プラットフォームの違いに対して柔軟に対応することができます。そのため、Flash形式の動画プレーヤーを表示できないスマートフォンなどのモバイル機器でも、埋め込み動画プレーヤーのYouTube動画を問題なく見ることができます。
また、JavaScriptの「イベントリスナー」の機能をつかうことができるので、YouTube動画に関する「イベント」が発生したときに、あらかじめ指定した動作をさせることもできます。
今回の仕組みの場合は、「イベントリスナー」の機能をつかって、動画の再生状態が「再生が完了した状態」に変わるという「イベント」が発生したときに、あらかじめ設定している命令(「リダイレクトで別のページに移動させる」という命令)を出すようにしています。
さきほどお話した「パラメータ」をつかうこともできます。
商用利用でも、有料販売でも、改造でも、なんにでも、自由に無料でつかってください(ライセンスについて)
このページでお話している仕組み(ソフトウェア)は、MITライセンスのもとでオープンソースソフトウェアとして配布しています。
条件を守っていただけるのであれば、誰でも自由に無料で、このソフトウェアをつかっていただくことができます。
このソフトウェアをコピーしてつかったり、配布したり、変更を加えたり、変更を加えたものを配布したり、商用利用したり、有料で販売したりと、なんにでも自由につかってください。
このソフトウェアを利用するには、「著作権表示」と「ライセンスの全文」を掲載することと、無保証であることを受け入れることという条件を守っていただく必要があります。
このソフトウェアの場合、「著作権表示」と「ライセンスの全文」の掲載については、ソースコードのなかや、同梱の別ファイルなどに下記の記述を掲載していただくだけでかまいません。
Released under the MIT license
https://github.com/YukinobuKurata/YouTubeEndPointRedirect/blob/master/MIT-LICENSE.txt
「Copyright (c) 2013 Yukinobu Kurata」という部分は、「著作権表示」の部分です。
「Released under the MIT license」という部分は、「MITライセンスのもとで配布されている」ということを示しています。
最後のURLは、「ライセンスの全文」が掲載されているページのURLです。
(参考)
MITライセンスの詳しい説明は、下のページでお話しています。
MITライセンスについて
https://wisdommingle.com/mit-license/
YouTube APIについての関連記事
下の記事は、「YouTubeのAPI」についての、そのほかの関連記事です。
YouTubeのAPIについてもっと知りたい場合は、下のリンクをクリックして、これらの記事もご覧ください。
- YouTube動画の21のパラメータまとめ+αと埋め込みコードの実例
- YouTube動画と連動してあらかじめ設定した時間になると購入ボタンが表示される仕組み (HTML、IFrameプレーヤーAPI(JavaScript)、CSS)
- YouTube動画の一時停止ができないようにする仕組み (IFrameプレーヤーAPI(JavaScript))
YouTubeのうまい使い方についての関連記事
下の記事は、「YouTubeのうまい使い方」についての関連記事です。
YouTubeのうまい使い方について知りたい場合は、下のリンクをクリックして、これらの記事もご覧ください。
YouTube動画の再生終了後にリダイレクトで別のページに自動的に移動させる仕組み (IFrameプレーヤーAPI(JavaScript))
の、実例のHtmlをコピーして、こちらのサイトに貼り付けて使用したり、単独でhtmlファイルを作成してそのコードを貼り付けて動かしたり...したのですが、リダイレクトだけが上手くいきません...動画が停止して再生ボタンが出る状態になってジャンプしてくれません...
どうしたら、ちゃんと動いてくれるのか...教えてください。よろしくお願いします。
村上さん
はじめまして、このブログの運営者の
倉田幸暢です。
メッセージありがとうございます。
さきほど、この実例のコードを
こちらでHTMLファイルにしたものをつくりましたので、
そちらをダウンロードしていただければとおもいます。
このHTMLファイルをダウンロードしていただいて、
ウェブブラウザで見ていただければ、
ちゃんと機能するはずです。
下のURLのページのなかの
「ダウンロード開始」というボタンを押していただければ、
このHTMLファイルをダウンロードしていただくことができます。
(ファイル転送サービス(「ギガファイル便」)をつかっています。)
http://www5.gigafile.nu/v3/?22e7413fc17a37cc97f33ea7883bd1fb
よろしくお願い致します。
m(_ _)m
早速の対応、本当にありがとうございます!
ファイルをダウンロードしてそのファイルを実行してみました...が、リダイレクトせずに再生ボタンが出た状態で止まってしまいました...。
何がいけないのか、何が違うのか...
私には知識がないため、頼るばかりでもうしわけありません...
よろしくお願いします。
ちなみに...このページの一番上のほうにある実例のものは、動画再生後にジャンプをしてくれます。
村上さん
ご連絡ありがとうございます。
村上さんは、ウェブブラウザとして
Internet Explorer(インターネットエクスプローラー)を
お使いでしょうか?
インターネットエクスプローラーや、
Opera(オペラ)などのウェブブラウザの場合は、
HTMLファイルがローカルにある状態
(HTMLファイルがご自身のパソコンのなかにある状態)だと、
そのファイルをウェブブラウザで開いても、
リダイレクトが実行されないことがあります。
ですが、HTMLファイルをサーバーにアップロードして
そのHTMLファイルのURLにアクセスする場合であれば、
インターネットエクスプローラーやオペラでも
ちゃんとリダイレクトが実行されるはずです。
ですので、一度、HTMLファイルを
サーバーにアップロードしてからそのURLにアクセスして
ご確認いただけますでしょうか?
よろしくお願い致します。
m(_ _)m
村上です。お世話になります。
使用しているのは、IE9です。
言われるとおり、サーバーにアップロードしてためしたところ、
やはり、ジャンプせずに再生ボタンが出た状態で止まってしまいます。
頂いたファイルをDREAMWEAVER2でアップロードしました。その場所はコチラです。
http://houkukai.main.jp/youtube_redirect.html
なんとしても成功させたく...お忙しいと思いますが、
なにとぞ、ご協力お願い致します。
村上さん
ご連絡ありがとうございます。
村上さんがアップロードされたページを
IEで見てみたのですが、こちらのパソコン環境では
ちゃんとリダイレクトされました。
もしかしたら、動画が完了してから
リダイレクトが始まるまでに
すこし時間がかかるのかもしれませんので
動画が完了したあと、すこしの間
待ってもらう必要があるかもしれません。
一度ご確認いただけますでしょうか?
よろしくお願い致します。
m(_ _)m
お世話になります、村上です。
自分のパソコンからだと、長く待ってもリダイレクトはしませんでした...
知人のパソコンから観てもらったら、リダイレクトされました。ただ、リダイレクトまで時間がかかりました。 最初は10秒ぐらい...2回目以降は3秒ぐらい...でした。
いつも迅速な対応、ありがとうございます。 現在、動画の秒数をある程度計算して、そのタイミングでジャンプする手法でごまかしています...。 動画の読み込み時間などから誤差が出てしまったり...所詮ごまかしの手法です...。
演出上、動画が終わり次第スムーズなリダイレクトが出来ると、とても嬉しいです。
サイトに来たらフルスクリーン(背景)で動画を再生できて、動画終了後自動ジャンプ、 動画再生中は音量のコントロールだけが可能で、SKIPボタンで、動画終了後と同じくジャンプできる...というのが自分の欲している究極の姿です...。 倉田さんのような技術力のある方が、こういうわがままな希望を実現してくださると...(熱望、わがまま、ごめんなさい...)
...と、とりあえず現状報告です。 いつも迅速で誠意のあるご対応、とても感謝しております!!
村上さん
ご連絡ありがとうございます。
>自分のパソコンからだと、長く待ってもリダイレクトはしませんでした...
>
>知人のパソコンから観てもらったら、リダイレクトされました。ただ、リダイレクトまで時間がかかりました。 最初は10秒ぐらい...2回目以降は3秒ぐらい...でした。
>
>いつも迅速な対応、ありがとうございます。 現在、動画の秒数をある程度計算して、そのタイミングでジャンプする手法でごまかしています...。 動画の読み込み時間などから誤差が出てしまったり...所詮ごまかしの手法です...。
>
>演出上、動画が終わり次第スムーズなリダイレクトが出来ると、とても嬉しいです。
すこし細かい話になりますが、
「リダイレクトが開始されるまでに時間がかかる」
のでしょうか?
それとも、
「リダイレクトが開始されてから、ページが表示されるまでに時間がかかる」
のでしょうか?
もし、
「リダイレクトが開始されるまでに時間がかかる」
のではなく、
「リダイレクトが開始されてから、ページが表示されるまでに時間がかかる」
のであれば、「ページが表示されるまでにかかる時間」は、
ページを閲覧する方の通信環境やパソコン環境に依存するので
ページ制作者の側でコントロールするのはむずかしいかもしれません。
リダイレクト先のページでつかう画像の数や画像のファイルサイズを
小さくして、ページ自体の表示が速くなるようにする、
といったことはできるかもしれません。
また、動画の最後に、これから別ページに移動する旨を
つたえるメッセージなどを表示させて、
すぐにページが閉じられてしまわないようにする、
ということもできるかもしれません。
>サイトに来たらフルスクリーン(背景)で動画を再生できて、動画終了後自動ジャンプ、 動画再生中は音量のコントロールだけが可能で、SKIPボタンで、動画終了後と同じくジャンプできる...というのが自分の欲している究極の姿です...。 倉田さんのような技術力のある方が、こういうわがままな希望を実現してくださると...(熱望、わがまま、ごめんなさい...)
YouTubeの埋め込み動画プレーヤーの
見た目や機能をカスタマイズする方法については、
下のリンク先ページでくわしくお話しています。
こちらのページをご覧いただければ
ご希望の機能を実現するための参考になるとおもいます。
YouTube動画の22のパラメータまとめ+αと埋め込みコードの実例
よろしくお願い致します。
m(_ _)m
本当にご丁寧にありがとうございます。
これからも、いろいろとご利用させて頂きます。(いただくばかりでスミマセン...)
これからもよろしくお願い致します。
村上さん
僕が発信している情報が
なにかのお役に立てばうれしいです。
こちらこそよろしくお願い致します。
m(_ _)m