マジック クオートが無効になっている WordPress の自動エスケープの問題
PHP の設定でマジック クオートを無効にしているにもかかわらず、WordPress は POST データを自動的にエスケープし続けます。特に一重引用符。この不可解な動作は、開発者をしばしば困惑させてきました。
原因と解決策
根本的な原因は、WordPress のブートストラップ プロセス内にあります。 WordPress は、マルチサイト機能がアクティブな場合に自動エスケープを開始します。これを解決するには、WordPress がブートストラップされる前に次のコードを追加します。
<code class="php">$_GET = array_map('stripslashes_deep', $_GET); $_POST = array_map('stripslashes_deep', $_POST); $_COOKIE = array_map('stripslashes_deep', $_COOKIE); $_SERVER = array_map('stripslashes_deep', $_SERVER); $_REQUEST = array_map('stripslashes_deep', $_REQUEST);</code>
このコードは、自動エスケープが発生する前に WordPress のリクエスト オブジェクトからスラッシュを削除します。
代替アプローチ
stripslashes_deep は問題に効果的に対処しますが、次の代替アプローチを検討してください:
以上がマジック クオートを無効にした後も WordPress がデータをエスケープするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。