【发布时间】:2020-10-12 14:59:12
【问题描述】:
我们有一个多站点 Worpdress 安装和两个 woocommerce 商店。
在 blog_id 2 中,我们需要从 blog_id 1 中获取一些产品及其属性值 (pa_testattr)。 它确实运作良好,到目前为止,我们得到了所需的产品、产品名称和图像。 但是我们不会从 pa_testattr 中获取属性值/术语分配给这些产品以显示。
这是我们的代码:
switch_to_blog(1);
$args = array(
'post_type' => 'product',
'category' => 'my_cat',
'orderby' => 'name',
'order' => 'ASC',
'posts_per_page' => 10
);
foreach( wc_get_products($args) as $product ){
$product_id = $product->get_id();
// echo $product_id.'<br>';
// THIS DOES NOT WORK
foreach( wc_get_product_terms( $product_id, 'pa_testattr' ) as $attribute_value ){
echo $attribute_value . '<br>';
}
// THIS DOES NOT WORK
// THIS DOES ALSO NOT WORK (Output empty: string(0) "")
$myattr = $product->get_attribute( 'pa_testattr' );
var_dump($myattr);
// THIS DOES ALSO NOT WORK (Output empty: string(0) "")
echo '<p>' . $product->get_name() . '</p>';
echo $product->get_image();
}
restore_current_blog();
错在哪里?我们不能从另一个博客 ID 访问属性吗?
【问题讨论】:
-
现在可以了。我认为重复术语 slug 存在问题(但它们仍然被分配到不同的分类,......嗯?)
标签: wordpress woocommerce attributes multisite