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

如何修改WooCommerce短代码以仅显示单个指定产品属性?

修改WooCommerce短代码实现仅显示特定产品属性

方法1:直接指定目标属性(快速实现)

把你现有的显示所有属性的短代码函数,修改为只获取并输出Kunstenaar属性,代码示例如下:

function wc_display_kunstenaar_attribute() {
    global $product;
    if ( ! $product ) return;
    
    // 目标属性名
    $target_attr = 'Kunstenaar';
    $attr_value = $product->get_attribute( $target_attr );
    
    if ( empty( $attr_value ) ) return;
    
    // 自定义输出的HTML结构,可根据主题调整
    $output = '<div class="single-product-attribute">';
    $output .= '<strong>' . wc_attribute_label( $target_attr ) . ':</strong> ' . $attr_value;
    $output .= '</div>';
    
    return $output;
}
add_shortcode( 'show_kunstenaar', 'wc_display_kunstenaar_attribute' );

使用时在单品页面添加短代码 [show_kunstenaar] 即可。

方法2:支持自定义参数(灵活扩展)

如果后续需要显示其他属性,可以修改短代码,允许传入属性名参数:

function wc_display_single_product_attribute( $atts ) {
    global $product;
    if ( ! $product ) return;
    
    // 设置默认属性为Kunstenaar,可通过参数覆盖
    $atts = shortcode_atts( array(
        'attr' => 'Kunstenaar'
    ), $atts );
    
    $attr_name = $atts['attr'];
    $attr_value = $product->get_attribute( $attr_name );
    
    if ( empty( $attr_value ) ) return;
    
    $output = '<div class="single-product-attribute">';
    $output .= '<strong>' . wc_attribute_label( $attr_name ) . ':</strong> ' . $attr_value;
    $output .= '</div>';
    
    return $output;
}
add_shortcode( 'show_single_attr', 'wc_display_single_product_attribute' );

使用方式:

  • 显示Kunstenaar属性:[show_single_attr]
  • 显示其他属性(比如假设另一个属性名为"Genre"):[show_single_attr attr="Genre"]

关键注意点

  • 确保属性名Kunstenaar和产品后台设置的属性完全一致(包括大小写、特殊字符),否则无法获取到属性值。
  • 可以修改代码中的HTML类名和结构,匹配你的主题样式,让显示效果更协调。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 18:40:26