WordPress 記事ページに埋め込んだYouTubeの iframe を div で括る方法

YouTubeから埋め込み用のタグを取得して記事に張り付けるケースはよくあると思いますが、今回は埋め込んだYouTube動画をレスポンシブ対応するために必要なタグの置換作業の内容を書いていきます。(※CSSは割愛)

<iframe></iframe>

<div class="youtube"></div>

で括るには以下のような関数を用意してフィルターフック the_content に追加します。

youtubeのiframeタグをdivで括るための置換処理

/**
 * iframeタグを <div class="youtube"></div> で括るための置換処理
 */
function ag_wrap_iframe($the_content)
{
if ( is_singular() ) {
        $the_content = preg_replace('/<iframe/i', '<div class="youtube"><iframe', $the_content);
        $the_content = preg_replace('/<\/iframe>/i', '</iframe></div>', $the_content);
    }
    return $the_content;
}
add_filter('the_content','ag_wrap_iframe');

動作環境情報

エックスサーバー(x10)
PHP 7.3.16
MySQL 5.7
WordPress 5.4.2

コメント

タイトルとURLをコピーしました