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

如何在WooCommerce商店页面自定义位置添加归档描述区块?

WooCommerce商店页描述移至网格上方的解决方案

问题原因

你之前的短码实现出错,是因为woocommerce_product_archive_description()函数本身是直接echo输出内容,而短码要求函数返回字符串。直接调用这个函数时,echo的内容会在短码解析流程中提前输出,导致内容跑到文档最顶端,而非短码放置的位置。

正确实现步骤

1. 移除原位置的商店描述

确保移除动作在合适的钩子触发,比如init:

add_action( 'init', 'remove_default_shop_description' );
function remove_default_shop_description() {
    remove_action( 'woocommerce_archive_description', 'woocommerce_product_archive_description', 10 );
}

2. 创建正确的短码函数

使用输出缓冲捕获原函数的echo内容,转换成短码所需的返回值:

add_shortcode( 'shop_description', 'custom_shop_desc_shortcode' );
function custom_shop_desc_shortcode() {
    ob_start(); // 开启输出缓冲
    woocommerce_product_archive_description(); // 执行原函数,输出被缓冲捕获
    return ob_get_clean(); // 返回缓冲的内容,让短码在指定位置输出
}

3. 在模板中添加短码

在archive-product.html模板里产品网格的上方位置,添加短码:

[shop_description]

这样就能把商店描述准确放到产品网格上方,而不会跑到文档顶端。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 15:40:48