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

如何在单个网站部署两个WooCommerce实例,同时实现商店与目录功能?

WooCommerce单页面目录化实现方案

优先方案:无需搭建子域名独立实例

1. 自定义页面模板+WooCommerce短代码

  • 复制当前TheGEM主题的page.php文件,重命名为page-catalog.php,在文件顶部添加模板声明:
    /* Template Name: Product Catalog */
    
  • 编辑该模板文件,移除所有与购买相关的元素(价格、添加到购物车按钮等),使用WooCommerce内置短代码渲染商品列表,示例:
    echo do_shortcode('[products limit="-1" columns="4" orderby="title" order="ASC"]');
    
  • 为确保仅在该目录页面隐藏购买功能,可在主题的functions.php中添加条件钩子:
    add_action('template_redirect', function() {
        if (is_page_template('page-catalog.php')) {
            remove_action('woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10);
            remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30);
            remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_price', 10);
        }
    });
    
  • 最后在WordPress后台创建新页面,选择“Product Catalog”模板发布即可。

2. 借助B2B for WooCommerce插件权限控制

  • 利用插件的角色权限体系,为目标目录页面单独配置访问权限:
    • 创建新页面并添加商品展示内容(短代码/区块均可);
    • 在B2B插件设置中,针对该页面的访问角色(如未登录访客/特定B2B角色),禁用价格显示、添加到购物车功能,仅保留商品展示。

子域名独立实例的适用场景

仅当上述方案因主题深度定制、插件兼容性问题无法实现时,才考虑子域名独立实例:

  • 优点:目录与主商店完全隔离,定制自由度极高,不会互相干扰;
  • 缺点:需维护两个独立WordPress实例,商品数据同步需额外工具(如WooCommerce多站点功能或第三方同步插件),增加服务器资源消耗与维护成本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 08:22:39