2015-10-07 4 views
1

Я пытаюсь показать пользовательское значение атрибута продукта на моей вкладке WooCommerce; атрибут называется спецификацией. Ниже мой код ничего не выводит. Идеи?Получить пользовательский атрибут woocommerce

<!-- language: lang-all --> 
add_filter('woocommerce_product_tabs', 'woo_new_product_tab'); 
function woo_new_product_tab($tabs) { 
    // Adds the new tab 
    $tabs['test_tab'] = array(
     'title' => __('Features', 'woocommerce'), 
     'priority' => 50, 
     'callback' => 'woo_new_product_tab_content' 
    ); 
    return $tabs; 
} 
function woo_new_product_tab_content() { 
    // The new tab content 
    $pa_value = get_post_meta($product->id, 'pa_specification', true); 
    echo $pa_value; 
} 
+0

Это происходит потому, что в вашей функции обратного вызова вы используете '$ продукт-> id' в' get_post_meta' и '$ product' не имеет были определены. –

ответ

0

Используйте следующий код в функции обратного вызова

function woo_new_product_tab_content() { 
    // The new tab content  
    global $post; 

    $product_id = $post->ID; 

    $product = new WC_Product($product_id); 

    $pa_value = $product->get_attribute('pa_specification'); 

    echo $pa_value; 

} 
+0

отлично работает –

Смежные вопросы