1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【GTM】任意のWebサイトにYouTube動画をランダム自動再生するポップアップ(最小化機能付き)を埋め込む方法

1
Last updated at Posted at 2026-06-30

スクリーンショット 2026-06-30 151233.png

はじめに

「自社サイトやブログの片隅で、特定のYouTubeチャンネルの最新動画をアピールしたい」
「でも、毎回同じ動画じゃ飽きるし、ユーザーが邪魔だと思ったら閉じたり最小化したりできるようにしたい」

今回は、Googleタグマネージャー(GTM)を使って、YouTubeとは全く無関係な任意のWebサイトに、チャンネルの最新動画20本からランダムで自動再生(ミュート)される固定ポップアッププレイヤーを実装する方法を解説します。

サイトのHTML/CSSを直接いじることなく、GTMだけで完結する手軽な方法です。

出来ること

  • 画面の右上にプレイヤーが固定配置(固定ポップアップ)される
  • 指定したチャンネルの最新20本からランダムに1本が選ばれ、自動再生(ミュート状態)される
  • 「閉じる(×)」ボタンでプレイヤーを完全に削除できる
  • 「最小化(−)」ボタンで、動画を非表示にしてコンパクトにできる(元に戻すことも可能)

ステップ1:YouTubeのプレイリストIDを確認する

今回はチャンネルの「アップロード動画一覧」のプレイリストを利用します。

  1. 対象のYouTubeチャンネルのトップページを開きます。
  2. チャンネルID(例: UC... で始まる文字列)を確認します。
  3. チャンネルIDの UC の部分を UU に書き換えます。これが「アップロード動画一覧」のプレイリストIDになります。
    • 例:チャンネルIDが UCvpredjG93ifbCP1Y77JyFA の場合、プレイリストIDは UUvpredjG93ifbCP1Y77JyFA になります。

ステップ2:GTM(Googleタグマネージャー)の設定

1. トリガーの作成

ポップアップをどのタイミングで表示させるかを設定します。

  • トリガーのタイプ: ページビュー(または ウィンドウ読み込み
  • トリガーの発生場所: すべてのページビュー(特定のページだけにしたい場合は 一部のページビュー でURLを指定)

2. タグの作成

本番のスクリプトを流し込みます。

  • タグの種類: カスタムHTML
  • HTML: 以下のコードをそのまま貼り付けます。
    • ※ 6行目の var playlistId = "..." の部分を、ステップ1で調べたご自身のプレイリストIDに書き換えてください。
<script>
(function() {
  // すでにポップアップがあれば処理を終了する
  if (document.getElementById('youtubePopup')) return;
  
  // 1. 指定チャンネルの「アップロード動画一覧」のプレイリストIDを設定
  var playlistId = "UUvpredjG93ifbCP1Y77JyFA"; 

  // 最新20本の中からランダムなインデックス(0〜19)を抽出
  var randomStartIndex = Math.floor(Math.random() * 20);

  // 2. HTML要素を動的に作成
  var container = document.createElement('div');
  container.id = 'youtubePopup';  

  var wrapper = document.createElement('div');
  var iframe = document.createElement('iframe');
  
  // ×ボタン要素の作成
  var closeBtn = document.createElement('div');
  closeBtn.textContent = '×';
  closeBtn.id = 'youtubePopupClose';

  // 最小化ボタン要素の作成
  var minBtn = document.createElement('div');
  minBtn.textContent = '';
  minBtn.id = 'youtubePopupMin';

  // 指定チャンネルのプレイリストURLに、ランダムなインデックスと自動再生・ミュート設定を結合
  iframe.src = '[https://www.youtube.com/embed/?listType=playlist&list=](https://www.youtube.com/embed/?listType=playlist&list=)' + playlistId + '&index=' + randomStartIndex + '&autoplay=1&
  '''
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?