ショートコード [ks_tubelist]

本プラグインの中核となるショートコードです。16 種類の属性で取得元・件数・表示モード・並び順・装飾を細かく制御できます。

基本構文

[ks_tubelist 必須属性 (channel | playlist | handle | video) オプション属性]

取得元として channel / playlist / handle / video のいずれか 1 つを必ず指定します。複数同時指定時は video > playlist > handle > channel の優先順で解決します。

用途別サンプル

1. プレイリストを新しい順で 12 件表示 (グリッド)

[ks_tubelist playlist="PLxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" count="12" cols="3"
             order="newest" show="title,date"]

2. チャンネルの人気順上位 8 件をサムネ大きめで

[ks_tubelist channel="UCxxxxxxxxxxxxxxxxxxxx" count="8" cols="4"
             order="popular" show="title,date,duration"]

3. @ ハンドルで指定 + 説明文を 160 文字表示

[ks_tubelist handle="@MyChannel" count="6" cols="2"
             show="title,date,description" excerpt_length="160"]

4. 60 件取得して「もっと見る」で 6 件ずつ展開 (推奨)

[ks_tubelist channel="UCxxxx" count="60" cols="3"
             mode="loadmore" per_page="6"
             show="title,date,description" excerpt_length="160"]

5. カルーセル (横スクロール) で最新 30 件

[ks_tubelist channel="UCxxxx" count="30" cols="4"
             mode="carousel" per_page="4"]

6. ページネーション + 見出しレベル制御 + JSON-LD 出力

[ks_tubelist channel="UCxxxx" count="60" cols="3"
             mode="paginate" per_page="12"
             heading_level="4" date_format="Y/m/d" jsonld="yes"]

7. 単発動画・動画URLを指定して表示

[ks_tubelist video="dQw4w9WgXcQ" cols="1"]

[ks_tubelist video="dQw4w9WgXcQ, https://youtu.be/xxxxxxxxxxx,
                    https://www.youtube.com/watch?v=yyyyyyyyyyy" cols="3"]

動画 ID (11 文字) または動画 URL (watch?v= / youtu.be / shorts / embed / live 形式) をカンマ区切りで複数指定できます。count 未指定なら指定した動画を全件表示し、order 未指定なら記述順のまま表示します。

属性リファレンス (全 16 属性)

取得元 (どれか 1 つ必須)

属性初期値形式 / 範囲説明
channel UC[A-Za-z0-9_-]{20,30} YouTube チャンネル ID。UC で始まる 24 文字前後の文字列。
playlist (PL|UU|FL|RD|OL|LL)... プレイリスト ID。チャンネルのアップロード一覧 (UU...) も指定可能。
handle @[A-Za-z0-9._-]{3,30} @ ハンドル (例: @MyChannel)。内部で API がチャンネル ID に解決します。
video 動画 ID (11 文字) または動画 URL カンマ区切りで複数指定可 (最大 200 件、重複は自動除去)。URL は watch?v= / youtu.be / shorts / embed / live 形式に対応。count 未指定なら全件表示、order 未指定なら記述順。

取得制御

属性初期値範囲説明
count 12 1〜200 取得する動画の最大件数。
order newest newest / oldest / popular / random / manual 並び順。popular / random は count×3 を取得母数にしてから上位/抽選で count 件にします。manual は取得元の並び (video は記述順、playlist は登録順) を維持します。
cache 3600 0 以上 (秒) 取得結果を transient にキャッシュする秒数。0 で無効化 (毎回 API 取得)。

表示制御

属性初期値範囲説明
mode 管理画面の既定値 grid / paginate / loadmore / carousel 表示モード。詳細は 表示モード 参照。
per_page 管理画面の既定値 1〜count 1 ページ (または 1 スクリーン) に表示する件数。paginate / loadmore / carousel で使用。
cols 3 1〜8 グリッドの列数。レスポンシブで 900px / 640px / 420px ブレークポイントで自動縮小。
show title,date title / date / duration / views / description (カンマ区切り) 表示する項目を列挙。例: show="title,date,duration,views"
excerpt_length 120 0 以上 description を表示する際の最大文字数 (mb_substr ベース)。0 で全文表示。
heading_level 3 2〜6 動画タイトルの見出しタグ。目次プラグインの拾われ方を調整できます。
title_lines 2 1〜6 タイトルを何行で省略するか (-webkit-line-clamp)。長いタイトルの折返し制御。
date_format WP の「日付形式」設定 PHP 日付フォーマット文字列 例: Y/m/d / Y年n月j日。未指定で WP 設定値を使用。
jsonld no yes / no / 1 / true yes で ItemList + VideoObject の JSON-LD を <script type="application/ld+json"> として出力。SEO 用。

使い方タブで属性早見表を確認

管理画面「使い方」タブでもショートコード例と属性表を確認できます (本マニュアルとほぼ同じ内容)。

管理画面「使い方」タブのショートコード例と属性表
図: 「使い方」タブ — ショートコード例 + 属性早見表 + CSS カスタマイズ例

動作上の注意点

popular / random は API 取得量が増えます。 並び替えのために count×3 を取得するため、無料枠の消費が大きくなります。cache を長めに設定するか、十分な件数を取得する設計に変えてください。

per_page は count を超えません。 count="6" per_page="12" と指定しても、内部で per_page = min(count, per_page) = 6 として扱われます。

取得元の形式チェック (UC で始まる / PL で始まる / @ で始まる) は描画前に検証されます。形式不正の場合、編集権限者にのみエラーメッセージが表示され、訪問者には何も表示されません。