WordPressの記事にiframeタグを入れるのが大変だった

最近Youtubeへ動画を公開して、記事内に埋め込みもしてしてみましたが、
簡単には出来なかったので同じような方のための情報共有です。

こんな症状

当サイトはTCDのWordpressテーマを使っています。
入力補助が色々あってその内の1つに「クイックタグーYoutube動画」なるものがあります。

Youtubeの動画ページにある共有用のHTMLタグを入力するのですが、”保存”や”公開”すると入力したタグが綺麗に消えてしまいました。
入力していたのは下記のような<iframe>~</iframe>で囲まれたタグです。

<iframe width=”560″ height=”315″ src=”https://www.youtube.com/embed/t2rgUUOPPu8″ frameborder=”0″ allow=”autoplay; encrypted-media” allowfullscreen></iframe>

Google先生に聞いた

<iframe></iframe>タグが消えるのはWordpressのセキュリティの都合。

個人でWordpress運用しているのとわかりにくけど、
Wordpressが不特定多数のユーザーによる投稿・編集も考慮している点と、
<iframe>タグが、ページ内に別のページを埋め込むような挙動をするので、
悪意のあるユーザーがサイトを壊すようなコードも入れられるのは危ないだろうと言うこと。

<iframe>タグを入力出来るのは一部の権限を持ったユーザーだけで、
それ以外のユーザーが入力すると今回のような入力値が消えるようです。

対処方法はこんな感じらしいです。
それぞれの詳細は、Google先生に聞いてください。

  • ユーザーの権限を昇格
  • iframeプラグインの導入
  • function.phpの編集

解決しなかった

まず、投稿ユーザーは”管理者権限”を持っていました。
だからこれは確認だけ。

その次のiframeプラグインの導入や、function.phpの編集は、ユーザーの権限に関わらず
iframeタグを入力出来るようにするための方法なのですが、
そもそも”管理者権限”持っているので、この2つも効果ありませんでした。

ただし、Wordpressの大元の管理者ユーザーで編集した場合は<iframe>の入力が出来ました。

権限周りの影響だとは思いますが、これまでの対処法は意味がなかったので、
解決法を言っているところと何か違うところは無いか?考えました。

サブディレクトリ型のWordpress

以前拡張のためにサブディレクトリ型にしていたので、それが影響しているのではないか?と考えてもうちょっと調べました。

サブディレクトリ型の場合、サイト毎のユーザーとサイトネットワーク管理のユーザーがあります。
サイトネットワーク管理のユーザー一覧で、Wordpressの大元管理者を見ると”特権管理者”と表示されている。
この辺りをもう少し検索すると、そのものズバリなサイトへたどり着いた。

マルチサイトのWordpressでiframeタグがごっそり抜ける

個人で運用して、個人で投稿するだけなので、
投稿用のユーザーアカウントに”特権管理者”を付けて対応することにしました。

↓無事に埋め込みに成功!

TCDサポートは役に立たなかった

余談かもしれませんが、この症状解決のためにテーマの販売元のサポートにも連絡しました。
サポートからのメールが迷惑メールに分類されるなどの時間ロスもありましたが、
1週間の期間の間で2回の回答を頂きました。

結果的に何も役に立たないと思ったので、今回の自己解決を試みました。

1回目の問い合わせ
テーマ導入で追加された、Youtube動画埋め込みようのタグに<iframe>~</iframe>を入れても
保存すると消えてしまうのですが、どうすれば良いのですか?

1回目の回答
埋め込み用のコードはこの様に取得してください。

回答メールに返信
 コードの取得方法はわかっています。消えてしまう事への対応を聞いています。
投稿ユーザーの権限によっては<iframe>などの一部のコードは消えてしまうのがwordpressの仕様のようですが、
この仕様を変更するような動作ではないのでしょうか?

返信メールに対する回答は数日間ありませんでしたので、再度問い合わせ

2回目の問い合わせ
先日、こちらのフォームより問い合わせさせて頂き、回答を頂きましたが
メールにて返信した通り、求めている回答とは違います。
これ以上待たされるのであれば、自分で解決策を探しますのでご連絡頂けるとありがたいです。

2回目の回答
入力する値は先に回答した通りで間違いございません。
入力値が消えてしまう現象についてはお客様の環境がわかりかねるため判断しかねます。
また、このようなお問合せは窓口が違うので次からこちらにお願いします。

”環境がわからないと回答が難しい”、”違う窓口から問い合わせしている”というのは
1回目の回答時に言われていれば、「そうでしたね」となるのですが、
最初の問い合わせから1週間以上経っていて、途中で変な回答挟んでからの事だったので
「自分で解決方法を探します。ありがとう」でサポートとのやりとりは終わり。

コメント