0
我的WooCommerce安裝程序中有幾個自定義字段,但我試圖讓它們顯示在訂單視圖中。未在訂單上顯示自定義字段
這是我的代碼(它的緣故一個自定義字段):
add_action('woocommerce_after_order_notes', 'my_custom_checkout_field');
function my_custom_checkout_field($checkout) {
echo '<div id="my_custom_checkout_field"><h3>'.__('Extra Information').'</h3>';
woocommerce_form_field('date_of_birth', array(
'type' => 'select',
'class' => array('my-field-class form-row-wide'),
'label' => __('Date of Birth'),
'placeholder' => __('Enter something'),
'required' => true,
'options' => array(
'1995' => __('1995', 'woocommerce'),
'1994' => __('1994', 'woocommerce')
)
),
$checkout->get_value('date_of_birth'));
我以爲低於這個會做它添加到順序查看作業,但它不..或者我我完全錯了,自定義字段沒有保存?
add_action('woocommerce_checkout_update_order_meta', 'my_custom_checkout_field_update_order_meta');
function my_custom_checkout_field_update_order_meta($order_id) {
if ($_POST['date_of_birth']) update_post_meta($order_id, 'Extra Information', esc_attr($_POST['date_of_birth']));
我再通過計算器看了一下,發現一些更多的信息,並試圖此:
function my_custom_checkout_field1($order){
echo "<p><strong>Date of Birth:</strong> " . $order->order_custom_fields['_date_of_birth'][0] . "</p>";
}
add_action('woocommerce_admin_order_data_after_billing_address', 'my_custom_checkout_field1', 10, 1);
這確實增加了一個「出生日期」的順序查看,但不幸的是它是空之後。我試過_date_of_birth和date_of_birth,顯然它需要額外_ infront,我從這裏得到了答案:Show custom field on order in woocommerce
我試圖查看數據庫內部,但無法找到任何地方顯示的訂單額外的細節(沒有定期詳情,除了訂單編號)。
任何人都可以告訴我我做錯了什麼,我可以做些什麼使字段顯示在訂單視圖上?
感謝
非常感謝,你是完全正確的,它解決了問題! – Jamie000012