概要
woocommerce_quantity_input_inputmode フィルタは、WooCommerce の商品数量入力フィールドに関連する設定を変更するために使用されます。このフィルタを使用することで、数量入力フィールドに HTML inputmode 属性を追加することができます。これにより、特定のデバイスやブラウザでのユーザーエクスペリエンスを向上させることが可能です。
このフィルタは以下のような機能を実装する際によく使われます:
- モバイルデバイス向けに数字キーボードを表示する
- ユーザーが数量を入力する際に特定のフォーマットを強制する
- アクセシビリティの向上
- 商品ページのカスタマイズ
- 特定の条件下での数量制限の支援
- 顧客の利便性を高めるためのフォーム操作
構文
add_filter('woocommerce_quantity_input_inputmode', 'your_function_name', 10, 2);
パラメータ
$inputmode: 現在の inputmode 値。$product: 現在の商品オブジェクト。
戻り値
- 変更された inputmode 値。
使用可能なバージョン
- WooCommerce バージョン: 3.0.0 以降
- WordPress バージョン: 4.0 以降
この関数のアクションでの使用可能性
| アクション | 使用例 |
|---|---|
| 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('woocommerce_quantity_input_inputmode', 'custom_quantity_inputmode', 10, 2);
function custom_quantity_inputmode($inputmode, $product) {
return 'numeric';
}
説明: このコードは、商品数量入力フィールドに numeric の inputmode 属性を設定し、特にモバイルデバイスで数字キーボードを表示させます。
サンプルコード 2
add_filter('woocommerce_quantity_input_inputmode', 'custom_decimal_inputmode', 10, 2);
function custom_decimal_inputmode($inputmode, $product) {
return 'decimal';
}
説明: このコードは、数量入力フォームに対して decimal の inputmode 属性を追加し、小数点を含む値の入力を可能にします。
サンプルコード 3
add_filter('woocommerce_quantity_input_inputmode', 'custom_search_inputmode', 10, 2);
function custom_search_inputmode($inputmode, $product) {
return 'search';
}
説明: このコードは、数量入力フィールドに search の inputmode 属性を設定し、検索フィールドとしての機能を持たせます。
サンプルコード 4
add_filter('woocommerce_quantity_input_inputmode', 'custom_tel_inputmode', 10, 2);
function custom_tel_inputmode($inputmode, $product) {
return 'tel';
}
説明: このコードは、数量入力フィールドに tel の inputmode 属性を追加し、電話番号入力に最適化されたキーボードを表示させます。
サンプルコード 5
add_filter('woocommerce_quantity_input_inputmode', 'custom_email_inputmode', 10, 2);
function custom_email_inputmode($inputmode, $product) {
return 'email';
}
説明: このコードは、数量入力フィールドに email の inputmode 属性を設定し、メールアドレスの入力に適したキーボードを表示させます。