2015-02-23 7 views
0

поэтому я запрашивая сообщения, как показано ниже:Доступ woocomerce атрибутов продукта с помощью query_posts

query_posts('post_type=Product&showposts=-1'); 

Это возвращает все пост типа продукта. Но у меня есть пользовательские атрибуты для моих продуктов, которые были созданы в wooCommerce, но я не могу найти эту информацию в любом месте.

я попытался с помощью:

$thePost = get_post_custom() 

я также пытался:

$thePost = get_post_meta(get_the_ID) 

когда я print_r это я получаю много информации, но я не могу видеть продукт атрибуты WooCommerce везде

ниже показано, как эта информация задается на продукте.

enter image description here

Кто-нибудь знает, как я получить доступ к этой информации после запроса пост? специально мне нужно извлечь цвета и размеры.

ответ

1

Варианты продукта сохраняются как другие дочерние сообщения (пользовательский тип сообщения product_variation). Следующий код непроверен, но вы должны понять это.

query_posts('post_type=Product&showposts=-1'); 
while(have_posts()){ 
    the_post(); 
    $product_id = get_the_ID(); 

    $variations = get_posts(array('post_type' => 'product_variation', 'post_parent' => $product_id, 'posts_per_page' => -1)); 

    foreach($variations as $var){ 
    $var_customs = get_post_customs($var->ID); 
    // now you can inspect "meta" fields 
    } 
} 

Так у вас есть продукт с ID = 7 ->post_type=product, его вариации post_type=product_variation&post_parent=7. Размеры и кулуары сохраняются как мета значения этих вариаций. Мета ключи начинаются с attribute_pa_....

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