You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress:在父分组产品页面显示子项的代码求助

在WooCommerce分组产品页面展示子产品的代码片段

如果你需要在分组产品的详情页(single-product.php)展示其子产品,可使用以下两种实现方式:

方式1:直接修改single-product.php文件

将以下代码插入到single-product.php的合适位置(比如产品描述区域之后):

<?php
global $product;
// 验证当前产品为分组产品
if ( is_product() && $product->is_type( 'grouped' ) ) {
    // 获取所有子产品ID
    $child_product_ids = $product->get_children();
    
    if ( ! empty( $child_product_ids ) ) {
        echo '<div class="grouped-child-products">';
        echo '<h3>子产品列表</h3>';
        echo '<ul>';
        
        foreach ( $child_product_ids as $child_id ) {
            $child_product = wc_get_product( $child_id );
            
            // 仅显示可见的子产品
            if ( $child_product && $child_product->is_visible() ) {
                echo '<li class="child-product-item">';
                // 子产品名称与链接
                echo '<a href="' . esc_url( $child_product->get_permalink() ) . '">' . esc_html( $child_product->get_name() ) . '</a>';
                // 子产品价格
                echo '<span class="child-product-price">' . $child_product->get_price_html() . '</span>';
                // 加入购物车按钮(使用WooCommerce短代码)
                echo do_shortcode( '[add_to_cart id="' . $child_id . '"]' );
                echo '</li>';
            }
        }
        
        echo '</ul>';
        echo '</div>';
    }
}
?>

方式2:通过钩子函数添加(推荐)

这种方式无需修改主题核心模板文件,避免主题更新时代码丢失。将以下代码添加到主题的functions.php文件中:

add_action( 'woocommerce_after_single_product_summary', 'render_grouped_product_children', 20 );
function render_grouped_product_children() {
    global $product;
    
    if ( ! is_product() || ! $product->is_type( 'grouped' ) ) {
        return;
    }
    
    $child_product_ids = $product->get_children();
    
    if ( empty( $child_product_ids ) ) {
        return;
    }
    
    echo '<div class="grouped-child-products">';
    echo '<h3>子产品列表</h3>';
    echo '<ul>';
    
    foreach ( $child_product_ids as $child_id ) {
        $child_product = wc_get_product( $child_id );
        
        if ( $child_product && $child_product->is_visible() ) {
            echo '<li class="child-product-item">';
            echo '<a href="' . esc_url( $child_product->get_permalink() ) . '">' . esc_html( $child_product->get_name() ) . '</a>';
            echo '<span class="child-product-price">' . $child_product->get_price_html() . '</span>';
            echo do_shortcode( '[add_to_cart id="' . $child_id . '"]' );
            echo '</li>';
        }
    }
    
    echo '</ul>';
    echo '</div>';
}

你可以根据需求调整HTML结构和样式,比如修改标题文字、添加自定义CSS类来美化显示效果。

内容的提问来源于stack exchange,提问作者Tom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 04:37:18