Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在产品网格中显示产品变化列表及其背后的价格_Php_Wordpress_Woocommerce_Hook Woocommerce_Variations - Fatal编程技术网

Php 在产品网格中显示产品变化列表及其背后的价格

Php 在产品网格中显示产品变化列表及其背后的价格,php,wordpress,woocommerce,hook-woocommerce,variations,Php,Wordpress,Woocommerce,Hook Woocommerce,Variations,我想在WooCommerce中的产品网格中回显产品变体的列表 例如,在商店页面上有一个带有产品标题+产品描述的产品网格。在此之后,我想回应产品的变化与价格 该产品现在类似于: Product image Product title Product description 例如,该产品有两种变体: Kids € 12,00 Adults € 16,00 然后,产品需要如下所示: Product image Product title Product description Kids € 12,

我想在
WooCommerce
中的
产品网格中回显
产品变体的列表

例如,在商店页面上有一个带有产品标题+产品描述的产品网格。在此之后,我想回应产品的变化与价格

该产品现在类似于:

Product image
Product title
Product description
例如,该产品有两种变体:

Kids € 12,00
Adults € 16,00
然后,产品需要如下所示:

Product image
Product title
Product description
Kids € 12,00
Adults € 16,00

有任何钩子吗?

在活动主题的functions.php中添加以下代码片段-

function woocommerce_after_shop_loop_item() {
    global $product;
    $variation_ids = $product->get_children();
    if( $variation_ids ) {
        foreach ( $variation_ids as $id ) {
            $v_product = wc_get_product($id);
            $variations = $v_product->get_variation_attributes();
            $variations_name = array();
            if( $variations ) {
                foreach ( $variations as $key => $value ) {
                    $variations_name[] = ucfirst( $value );
                }
            }
            echo '<p class="variation_price">'. implode( ', ', $variations_name ). " ". wc_price( $v_product->get_price() ).'</p>';
        }
    }
}
add_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_after_shop_loop_item' );
购物后循环商品的功能(){
全球$产品;
$variation_id=$product->get_children();
如果($variation\u id){
foreach($id为$id){
$v_product=wc_get_product($id);
$variations=$v_product->get_variations_attributes();
$variations_name=array();
若有($变更){
foreach($key=>$value){
$variations\u name[]=ucfirst($value);
}
}
echo“

”。内爆(“,”,$variations\u name)。“.wc\u price($v\u product->get\u price())。

”; } } } 添加动作('woocommerce'在'uShop'循环'uItem'标题之后,'woocommerce'在'uShop'循环'uItem'标题之后);
您好,这是有效的,但它会在产品名称之前像
'productname'-'variation''price'
一样回显产品名称。我只想让它像
'variation''price'
一样显示出来,而且我想用class

如果有销售价格,是否可以将常规价格和销售价格相邻显示以供变动?是的,这是可能的。只需将
wc\u price($v\u product->get\u price())
代码替换为
$v\u product->get\u price\u html()。我能换这个吗。例如,现在它显示
4-t-m-13-jaar
,而它应该是名称
4 t/m 13-jaar