Я хотел бы создать набор дополнительных полей ввода, если количество элементов больше одного. Вот так:
get_cart_contents_count() === 1 // No extra fields
get_cart_contents_count() === 2 // Generate new set of fields
<input id="Name2" />
<input id="Dob2" />
get_cart_contents_count() === 3 // Generate two sets of fields
<input id="Name2" />
<input id="Dob2" />
<input id="Name3" />
<input id="Dob3" />
И так далее. Эти данные должны быть переданы в размещенный заказ, а также на любые электронные письма. Я пытался это сделать в своих функциях. php, где я сбрасывал, а затем устанавливал новые поля проверки ввода, но новое условное выражение ничего не выводило:
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
//unset and set various checkout fields (working fine)
if ( WC()->cart->get_cart_contents_count() > 1 ) {
$fields['billing']['full_name_2'] = array(
'label' => __('Full Name', 'woocommerce'),
'required' => true,
'class' => array('form-row-wide'),
'clear' => true
);
$fields['billing']['full_name_2'];
}
return $fields;
}
Я также пробовал несколько вещей в условном выражении , например:
WC()->cart->get_cart_contents_count() !== 1
WC()->cart->get_cart_contents_count() !== '1'
Любой совет приветствуется.