WordPressの capabilities にはunfiltered_html
とunfiltered_upload
がありますが、フィルタリングで特に許可または禁止されているものについての文書はまだありません。
私がunfiltered_html
に関してWordPressのサイトで見つけた唯一の言及は:
ユーザーがHTMLマークアップ、さらにはJavaScriptコードをページ、投稿、コメント、ウィジェットに投稿することを許可します。
JavaScriptは管理者以外のユーザーには除外されていますが、どのHTMLが除外されていますか?
そしてunfiltered_upload
の場合:
この機能は、デフォルトではどの役割にも使用できません(スーパー管理者を含む)。次の定数を定義して機能を有効にする必要があります。
define( 'ALLOW_UNFILTERED_UPLOADS', true );
この定数を定義すると、単一サイトインストールのすべての役割にunfiltered_upload機能を割り当てることができますが、マルチサイトインストールの機能を許可できるのはスーパー管理者だけです。
繰り返しになりますが、説明には許可されているものと除外されているものの詳細は記載されていません。
unfiltered_html
およびunfiltered_upload
機能が許可または禁止する要素、コード、またはファイルの種類を正確に教えてもらえますか。
exact answerを思いつくことは難しいです。能力はしばしばそれらが暗示するよりも広く使われているからです。例えば、manage_options
のチェックは通常adminユーザーのチェックと同義語であり、実際には options とはあまり関係ないコンテキストで登場する可能性があります。
通常 件名の内容の合格/不合格の違いになります wp_kses()
。特定のkses設定と許可されていると考えられるものは文脈に依存するでしょうそして用心深いかもしれません。
私が覚えている限りでは、unfiltered_upload
のほうがもっと簡単です。それがなければホワイトリストに載っているファイルタイプだけが許されます。リストは wp_get_mime_types()
に基づいています。
これは古いスレッドですが、制限のあるunfiltered_htmlがニュースサイトで大きな問題を引き起こしていました。
社内の作家(ユーザーの特別なクラス)は彼らの物語の中に写真やビデオを配置する必要があります。写真は問題になりませんが、ビデオコードを埋め込んだ状態でページにiframeを埋め込むと、ストーリーを保存したときに埋め込まれたコードが消えてしまいます。
ビデオが編集者によって埋め込まれていたとしても、作家はストーリーを保存したときにiframeを失うことになります。
Unfiltered_htmlのブロックを解除することで、スタッフライターはビデオコンテンツを埋め込み、投稿を正しく作成できます。
Unfiltered_uploadsに関しては、私はそれが答えられたと思います。
これが誰かに役立つことを願っています。