概要
woocommerce_admin_settings_sanitize_option
フィルタは、WooCommerceの設定ページで入力されたオプション値をサニタイズ(無害化)するために使用されます。このフィルタを使用することで、ユーザーが設定した無効なデータをチェックし、必要に応じて補正やエラーメッセージを返すことができます。以下のような機能においてよく利用されます:
- ユーザー入力を無害化する。
- 入力値を特定のフォーマットに変換する。
- 不正な値を自動的に修正する。
- デフォルト値を提供する。
- 入力値の型を検証する。
- エラーメッセージを設定する。
構文
add_filter('woocommerce_admin_settings_sanitize_option', 'your_custom_sanitize_function', 10, 2);
パラメータ
- $value: 入力されたオプション値。
- $option: オプションの設定情報。
戻り値
サニタイズ後のオプション値。
使用可能なプラグインバージョン
- WooCommerce: 2.1.0以上
- WordPress: 4.0以上
サンプルコード
サンプル1: 整数値のサニタイズ
このサンプルコードでは、設定される値が整数であることを確認します。
add_filter('woocommerce_admin_settings_sanitize_option', 'sanitize_integer_option', 10, 2);
function sanitize_integer_option($value, $option) {
return intval($value);
}
サンプル2: 特定文字列の強制
このコードは、ユーザーが選択したオプション値が特定の文字列であることを確保します。
add_filter('woocommerce_admin_settings_sanitize_option', 'force_specific_string', 10, 2);
function force_specific_string($value, $option) {
return ($value === 'yes') ? 'yes' : 'no';
}
サンプル3: 文字列のトリミング
このサンプルは、設定された文字列から空白を除去します。
add_filter('woocommerce_admin_settings_sanitize_option', 'trim_string_option', 10, 2);
function trim_string_option($value, $option) {
return trim($value);
}
サンプル4: URLの検証
このコードは、設定された値が正しいURL形式であるかをチェックします。
add_filter('woocommerce_admin_settings_sanitize_option', 'validate_url_option', 10, 2);
function validate_url_option($value, $option) {
return filter_var($value, FILTER_VALIDATE_URL) ? $value : '';
}
サンプル5: プリフィックスの追加
このサンプルコードは、設定された文字列の前に特定のプリフィックスを追加します。
add_filter('woocommerce_admin_settings_sanitize_option', 'add_prefix_option', 10, 2);
function add_prefix_option($value, $option) {
return 'prefix_' . $value;
}
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
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 |