#wordpress #woocommerce #hook-woocommerce #woocommerce-theming #woocommerce-email
Вопрос:
В моем functions.php это добавляет пользовательское поле (_shirt_number) для оформления заказа в зависимости от категории
function bbloomer_product_add_on() {
$orderby = 'name';
$order = 'asc';
$hide_empty = false ;
$cat_args = array(
'orderby' => $orderby,
'order' => $order,
'hide_empty' => $hide_empty,
);
$product_categories = get_the_terms( get_the_ID(), 'product_cat', $cat_args );
foreach($product_categories AS $cat) {
if($cat->name == 'Goalkeeper Shirts' OR $cat->name == '16 Shirts' OR $cat->name == 'Outfield Shirts') {
$value = isset($_POST['_shirt_number'][0] );
echo '<table class="variations" cellspacing="0" id="shirtTable"> <tbody id="shirtDOM"><tr> <td class="label"><label for="shirtnumber">Shirt Number</label></td><td class="value"> <input required type="text" id="shirtnumber" class="" name="_shirt_number[]"> </td></tr></tbody> </table>';
wp_enqueue_script( 'script', get_template_directory_uri() . '/quirkypixel.js', array ( 'jquery' ), 1.1, true);
}
}
}
Другая функция сохраняет этот ввод в мета-элемент заказа
function bbloomer_product_add_on_order_item_meta( $item_id, $values ) {
if ( ! empty( $values['custom_numbers'] ) ) {
foreach(unserialize($values['custom_numbers']) AS $item) {
wc_add_order_item_meta( $item_id, '_shirt_numbers', $item, true );
}
}
}
Однако я не могу добавить это в таблицу заказов в шаблонах электронной почты. Я попробовал следующее:
function bbloomer_product_add_on_display_emails( $fields ) {
$fields['custom_numbers'] = 'Shirt Number(s)';
return $fields;
}
and from the woocommerce docs:
add_filter( 'woocommerce_email_order_meta_fields', 'custom_woocommerce_email_order_meta_fields', 10, 3 );
function custom_woocommerce_email_order_meta_fields( $fields, $sent_to_admin, $order ) {
$fields['custom_numbers'] = array(
'label' => __( 'Shirt Number(s)' ),
'value' => get_post_meta( $order->id, 'custom_numbers', true ),
);
return $fields;
}
и попытался заменить «custom_numbers «на» _shirt_number», чтобы посмотреть, сработало ли это…но все равно ничего не добавлено в таблицу в электронном письме.
Я успешно добавил категорию продукта в таблицу, но не могу открыть это поле. (На изображении показана таблица заказов в электронном письме с добавленной категорией, и я хотел бы, чтобы это поле появилось ниже)
Any thoughts? If I haven’t provided enough info or anything else just let me know.