先日、寄稿者権限でYouTube動画を埋め込もうとすると、下書き保存したり公開したタイミングで消えてしまうという相談を受けました。
確認したところ、保存したタイミングでiframeの部分がごっそり削除されていました。権限によって制限がかかっていて、寄稿者権限ではiframeは使えないようです。
YouTubeの埋め込み動画やGoogleマップの埋め込みなどは、iframeを使って実装するため、このままでは権限によって埋め込み動画や地図の埋め込みができません。
どの権限でもiframeを使えるようにすることで対処したので、その方法をご紹介したいと思います。
寄稿者でもiframeを使えるようにする方法
利用しているテーマのfunctions.phpに以下のコードを追加します。
function allow_iframe_tag($content){ global $allowedposttags; $allowedposttags['iframe'] = array('class'=>array() , 'src'=>array() , 'width'=>array(), 'height'=>array() , 'frameborder'=>array() , 'scrolling'=>array() , 'marginheight'=>array(), 'marginwidth'=>array() , 'allowfullscreen'=>array()); return $content; } add_filter('content_save_pre','allow_iframe_tag');
上記をコピペすることで、権限に関係なくiframeが使えるようになります。
$allowedposttagsでiframeの許可を宣言し、arrayの中の「’class’=>array ()」や「’scrolling’=>array()」などで使える属性を指定しています。
あとがき
どの権限でもiframeを使えるようにしたい場合は、上記を試してみてください。