use*_*332 7 format attributes product variation woocommerce
我正面临着产品变化及其在woocommerce中的属性的大问题.我正在尝试显示每个可用产品变体的每个属性的表格.但Woocommerce保存在元后的属性小写的完整,替换斜线和德国的特殊字符,如ü,O,A等我得到的属性与$变种的> get_variation_attributes().我在数据库中搜索了您可以看到的保存值,例如在管理面板的下拉列表中,但它们是这样保存的,没有指向它们所分配的变体的链接:
a:5:{s:10:"bestell-nr";a:6:{s:4:"name";s:11:"Bestell-Nr.";s:5:"value";s:9:"1 | 2 | and so on...
Run Code Online (Sandbox Code Playgroud)
如何以正确的格式显示属性?
谢谢你的帮助!
hel*_*ing 12
实际上,产品属性实际上是自定义分类中的术语,因此您只需要获取该特定分类中的术语.所有属性分类都以'pa_'开头.因此,size属性将是'pa_size'分类法.变体ID是变体的帖子ID.
但是根据你想要如何显示它,WooCommerce有一个内置函数来显示所有变体的属性:
以下内容将显示所有变体属性的定义列表.
echo wc_get_formatted_variation( $product->get_variation_attributes() );
Run Code Online (Sandbox Code Playgroud)
并传递第二个参数true
将显示一个平面列表:
echo wc_get_formatted_variation( $product->get_variation_attributes(), true );
Run Code Online (Sandbox Code Playgroud)
这似乎对我有用。希望这可以帮助。
$post = get_post();
$id = $post->ID;
$product_variations = new WC_Product_Variable( $id );
$product_variations = $product_variations->get_available_variations();
print_r($product_variations);
Run Code Online (Sandbox Code Playgroud)
这可以在 class-wc-product-variable.php 中找到
所以基本上,如果你在那个页面上环顾四周,你会发现一堆有用的功能。
这是我放在一起的东西。
$product_children = $product_variations->get_children();
$child_variations = array();
foreach ($product_children as $child){
$child_variations[] = $product_variations->get_available_variation($child);
}
print_r($child_variations);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
22856 次 |
最近记录: |