$sal に配列要素を格納して、配列 $fields['billing'] の先頭に配置しました。この目的のためにarray_unshiftを使用しています。
$sal = array(
'label' => __('Tratamiento', 'woocommerce'),
'placeholder' => _x('', 'placeholder', ''),
'required' => 0,
'clear' => true,
'class' => array('form-row form-row-wide'),
'type' => 'select',
'options' => array(
'Señor' => __('Señor', 'woocommerce' ),
'Señora' => __('Señora', 'woocommerce' ),
'Señorita'=> __('Señorita', 'woocommerce')
)
);
array_unshift($fields['billing'] , $sal);
array_unshift 0 キー インデックスの配列の先頭に要素を追加します。print_r の後、次のように表示されます。
[0] => Array
(
[Label] => Treatment
[Placeholder] =>
[Required] => 0
[Clear] => 1
[Class] => Array
(
[0] => form-row-row-wide form
)
[Type] => select
[Options] => Array
(
[Lord] => Lord
[Lady] => Lady
[Ms.] => Miss
)
)
私の問題は、キーの値を [0] から ['saluation'] に変更したいということだけです。
$fields['billing']['saluation'] = $fields['billing'][0];
unset($fields['billing'][0]);
しかし、配列の先頭にも必要です。私は多くのテクニックを試しましたが、まだこれを理解できません。
これは実際に私が扱っている woocommerce フィールド配列です。