概要
stripslashes_from_strings_only
フィルタは、文字列のスラッシュを取り除くために使われます。このフィルタは、特にHTTPリクエストの処理やデータベースからの取得時にスラッシュを除去するために利用され、以下のようなケースで役立ちます。
- ユーザー入力のバリデーション
- 不要なエスケープ文字を削除
- データベースからのデータ抽出時にスラッシュを取り除く
- JSONデータの整形
- フォームのデータ前処理
- REST APIのレスポンスの整形
- オプション値のクリーニング
- カスタム投稿タイプのデータ整形
構文
add_filter('stripslashes_from_strings_only', 'your_custom_function');
パラメータ
string
$value:操作対象の文字列。
戻り値
- スラッシュが取り除かれた文字列。
関連する関数
使用可能なバージョン
stripslashes_from_strings_only
フィルタは、WordPress 3.6以降で使用可能です。
コアファイルのパス
wp-includes/formatting.php
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | 〇 |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | 〇 |
register_sidebar | |
wp_loaded | 〇 |
send_headers | |
parse_query | |
pre_get_posts | |
wp | 〇 |
template_redirect | |
get_header | |
wp_head |
サンプルコード
サンプル1: ユーザー入力のエスケープ解除
このコードは、ユーザーがフォームに入力したデータからスラッシュを取り除きます。
add_filter('stripslashes_from_strings_only', function($value) {
return stripslashes($value);
});
サンプル2: REST APIのレスポンス整形
このコードは、REST APIの応答データからスラッシュを取り除き、データを整形しています。
add_filter('rest_prepare_post', function($response, $post) {
$response->data['content'] = stripslashes($response->data['content']);
return $response;
}, 10, 2);
サンプル3: データベースからのデータクリーニング
このコードは、データベースから取得したオプションの値からスラッシュを取り除きます。
add_filter('option_my_option', function($value) {
return stripslashes($value);
});
サンプル4: カスタム投稿タイプのデータ処理
このコードは、カスタム投稿タイプのフィールドからスラッシュを取り除いています。
add_filter('the_content', function($content) {
return stripslashes($content);
});
サンプル5: ユーザー名のバリデーション
このコードは、ユーザー名が入力されたときにスラッシュを取り除きます。
add_filter('pre_user_login', function($username) {
return stripslashes($username);
});
参考文献として、上記のサンプルコードは著作権フリーのもので構成されています。具体的な情報源を示すことは控えますが、一般的な WordPress のリファレンスマニュアルや WP Codex、または関連する開発者の文書を参考にするとよいでしょう。