WordPress(以下wp)とWooCommerce(以下wc)で、オンラインショップを作る下記でのメモ。
一般画面で下記のように年齢の項目を追加した。
今回は管理画面の顧客情報に項目を追加する。
使うフックは woocommerce_customer_meta_fields。
/**
* 管理画面ユーザ詳細
*
* @param array $fields
* @return array
*/
function custom_customer_meta_fields($fields) {
// 必要ない項目
$remove_key = array(
'country',
'postcode',
'state',
'city',
'address_1',
'address_2',
);
// 削除
foreach ($remove_key as $key) {
unset($fields['billing']['fields']['billing_'.$key]);
}
// 追加
$fields['billing']['fields']['billing_age'] = array(
'label' => '年齢',
'description' => '',
);
return $fields;
}
add_filter( 'woocommerce_customer_meta_fields', 'custom_customer_meta_fields', 100);
今回、配送の項目は使わないため記述してないが、
billing のところを shipping に変えると、
“顧客の配送先住所”の項目を変更できる。
あと登録側もそうだが、セレクトボックスにしたい場合、
type と options の項目を追加する。
$fields['billing']['fields']['billing_age'] = array(
'label' => '年齢',
'description' => '',
'type' => 'select',
'options' => array(
'0' => '20歳未満',
'21' => '21歳',
'22' => '22歳',
...
),
);