【WordPress】超軽量YouTube埋め込み

【WordPress】超軽量YouTube埋め込み

たまにはサイトの裏側の小技を記事にしてみる回。

小噺です。
インプレ記事ではYouTubeを埋め込みしていますが、コアウェブバイタル(サイトの表示速度)に配慮して公式の埋め込みを使用していません。SNSをほぼ使わずに検索流入をメインで想定しているために、ここらへんはとても気を遣うところであったりします。
定番はプラグインでの実装でしょう。

WP YouTube Lyte

公式埋め込みプレーヤーそっくりのUIで実装してくれますし、APIを叩かせれば動画名やチャンネル名も一緒に表示してくれますね。

でも自作しちゃった。

SEO的に最適化したいと思ったら細かい仕様が気に入らず、結局当サイトでは自作で実装してしまっています。特徴は

  • youtube.comもしくはyoutu.beもしくはiframeがある記事だけを対象にする
  • URLを入れるだけで自動的に埋め込み化&既存の公式埋め込みも置換
  • ページロード時にはサムネイル画像/動画タイトル/チャンネル名だけを読込
  • 再生ボタンをクリックしたときに動画を読込
  • APIを叩かずに、oEmbedエンドポイントを使用して動画のタイトルとチャンネル名をJSONで取得(30日サーバーでキャッシュ)
  • aria-labelでボタンの役割を構造化する
  • サムネはytimg.comから取得
  • 埋め込みされたサムネに自動で動画名&チャンネル名をalt属性として付与

ALT付与
など。alt付与したかったのがデカかったです。表示速度そのものはたぶんプラグインと同等。Youtube公式の埋め込みと比べてみると、大幅に速度改善できているのが分かると思います。

軽量埋め込み時の速度
こちらは自作コード組込時の記事の表示速度。

Youtube公式埋め込み時の速度
こちらがYoutube公式の埋め込み時の表示速度。

導入は自己責任でお願いします。サポートも一切しませんのであしからず。

functions.php

直接書いてもいいですが、わたしはyoutube.phpとしてモジュール化して、functionsからrequire しています。

 

youtube-lite.js

子テーマにjsディレクトリを作ってそこに突っ込んでください。

 

おわりに

特にオチもないので、よければ1曲聴きながら実際にどういうコードになるのか見てってください。

Feels So Good|Chuck Mangione - Topic|YouTube

Feels So Good
Chuck Mangione – Topic

 
▼投稿画面の入力
実際の入力
▼実際に表示される内容

カテゴリー|WP運用・SEO
 

5103chことみ

投稿者プロフィール

手に取った機種ごとにまったく違う世界を垣間見て、その瞬間を言葉にすることが大好きです。レビューというよりは世界に触れた感想の切り出し。インプレッションをつづります。

この著者の最新の記事

コメント

  • トラックバックは利用できません。

  • コメント (0)

  1. この記事へのコメントはありません。

CAPTCHA


 
※コメントは管理者の承認後に表示されます。

絞り込み検索

  • 価格帯

  • メイン帯域

  • 音の温度感

  • 音場サイズ

  • 定位

  • 分離

  • 低域:量感

  • 低域:質感

  • 中域:ボーカルタイプ

  • 中域:透明感

  • 高域:粗密・滑らかさ

  • 高域:刺さり感

より詳細に検索できます
ページ上部へ戻る