WooCommerceの管理画面に項目追加

WordPress(以下wp)とWooCommerce(以下wc)で、オンラインショップを作る下記でのメモ。

WORDPRESS + WOOCOMMERCE + STRIPEでのオンラインショップ実装メモ

一般画面で下記のように年齢の項目を追加した。

WOOCOMMERCEの登録項目を追加する。

今回は管理画面の顧客情報に項目を追加する。

使うフックは 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歳',
      ...
     ),
  );  

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です