説明
wp_unslash() は、入力値に自動で付与されるバックスラッシュを取り除く関数です。
基本構文
wp_unslash( string|array $value ): string|array
引数
$value:文字列または配列
戻り値
サニタイズ済みの文字列。
使い方(サンプル)
$value = wp_unslash( $input );
注意点
- WordPressは入力値(
$_POSTなど)に自動でエスケープを施しているため、取り出すときにこの関数が必要です。 - サニタイズ関数に渡す前に呼びます。
実務での使いどころ
$_POST・$_GET・$_REQUESTから値を取り出したときに、スラッシュを取り除くとき。- サニタイズの前の、最初の処理として使うとき。
よくあるミスと対処
$_POSTの値を、スラッシュを取り除かずに、サニタイズ・保存している。バックスラッシュが、余分に付いたままになる。- すでに処理した値に、さらに使い、必要なバックスラッシュまで、失われる。
- キーの存在を、確認せずに使っている(
isset())。
NG例
$title = sanitize_text_field( $_POST['title'] ); // unslash していない
OK例
if ( isset( $_POST['title'] ) ) {
$title = sanitize_text_field( wp_unslash( $_POST['title'] ) );
}
使い分け早見表
| 関数 | 役割 |
|---|---|
wp_unslash() |
スラッシュを取り除く |
wp_slash() |
スラッシュを追加する |
sanitize_text_field() |
入力値を、テキストに整える |
関連項目
wp_slash()、sanitize_text_field()
公式リファレンス:wp_unslash() | Function | WordPress Developer Resources

コメント