HOMEWordPress【WordPress】管理者以外のユーザーでiframeタグを入力すると保存時に削除される【WordPress】管理者以外のユーザーでiframeタグを入力すると保存時に削除される2021.12.21WordPressBこんにちは、ryohei(@ityryohei)です!本記事では、WordPressで管理者以外のユーザーで投稿の本文やテキストエリアにiframeタグを入力すると保存時に削除される場合の対処法をご紹介しています。管理者以外のユーザーでiframeタグで動画を埋め込みたいんだけど、保存すると消えてしまう...。すればiframeタグを保存できるのかな?上記の疑問にお答えします。管理者以外でiframeタグが削除される原因WordPressのフォーラムを読み漁った結果、管理者以外のユーザーが投稿の本文等でiframeタグを使用すると、wp-includes/kses.phpに記述されているkses_init()の影響でiframeタグが取り除かれることがわかりました。kses_init()は、入力フィールドを保存する際に適用されるフィルターで、内容としてはunfiltered_htmlという権限を持っていないユーザーに下記のフィルターを適用しますよ、というものです。);}上記関数は、WordPressが予め許可したHTMLの要素と属性以外を取り除く(無害化する)働きをするフィルターです。iframeタグはデフォルトでは管理者以外のユーザーに使用する権限が与えられていません。そのため管理者以外のユーザーが入力フィールドに保存すると、上記フィルターによりiframeタグが取り除かれる、というわけです。調べた結果、管理者以外のユーザーでiframeタグを使用する場合は、下記のどちらかの対応が必要になります。管理者以外のユーザーがiframeタグを使用できるようにホワイトリストに追加する指定した権限グループにunfiltered_html権限を追加してフィルターを無効にするどちらもfunctions.phpに追加する方法になります。次項で詳しい設定方法をご紹介します。iframeタグをフィルターのホワイトリストに追加する管理者以外のユーザーがiframeタグを使用できるように、iframeタグをフィルターのホワイトリストに追加します。この方法は、iframeタグや特定のHTMLタグのみをホワイトリストに追加したい場合に有効です。グローバル変数の$allowedposttagsに要素名の配列を追加し、値にHTMLタグで使用する属性を追加します。下記はiframeタグをホワイトリストに追加するサンプルです。実装の際に参考にしていただければ幸いです。'my_content_save_pre');以上でフィルターのホワイトリストにiframeタグを追加し、管理者以外のユーザーでも保存ができるようになります。権限グループにunfiltered_html権限を追加してフィルターを無効にするもう一つは特定の権限グループにunfiltered_html権限を追加する方法です。nfiltered_htmlの権限を追加することで、HTMLタグを無効にするフィルターが適用されなくなります。便利な反面、追加した権限グループは投稿等でHTMLタグがすべて使用できるようになるため、取扱いにご注意ください。権限グループにunfiltered_html権限を追加する場合は下記のように記述します。get_role()の引数に指定した権限グループにadd_cap('unfiltered_html')で権限を追加します。'my_add_caps');以上で特定の権限グループにunfiltered_html権限を追加し、HTMLタグが保存できるようになります。最後にWordPressでは、各権限グループのアクセス権を詳細に設定することができます。基本的に権限関連は実績のあるプラグインに任せてしまった方が運用面で楽だと思いますが、本記事のように限定的な権限のコントロールであれば自前でフックを用意するのも良いかもしれませんね。CC)はAdobe社が提供するクリエイター向けのサービスです。Effects」など全20以上のアプリが提供されており、幅広いプランが用意されています。CCの全20以上のアプリが使用できるプランです。コンプリートプラン(12ヵ月)」がセットになって39,980円(税込)で利用できます。Cloudのライセンスを購入でき、以降のライセンス更新も可能。動画教材で基礎スキルを習得できるので、入門する方にも便利な講座です。詳しくは下記のリンクからチェックしてみてくださいね。誤って呼び出されました。Webエンジニア福岡のWeb制作会社でエンジニアをしています。記事に関するご質問やご相談等ございましたら気軽にお問い合わせください。サービス・ツールSPEEC登録不要、無料で使えるビジネス書類作成サービスです。見積書~領収書までのPDFを一括で作成することができます。犬のごはん楽天市場で販売中の犬のごはんを好みの条件で簡単に絞り込むことができるドッグフード検索サイトです。HASHWordPressのログイン用にハッシュ化したパスワードを生成するツールです。DBからパスワードを変更する場合にご利用ください。Programご訪問いただきありがとうございます!本サイトを運営しているryoheiと申します。福岡のWeb制作会社でエンジニアをしています。本サイトは私が業務中に得た知識をアウトプットする場として2015年から運営しています。into-the-program.com。