我正在尝试制作我的第一个 WooCommerce 商店 . 不幸的是 Woocommerce 使用相同的模板 archive-product.php 来显示主店铺页面和搜索结果页面 .

我的问题是,当您访问主商店页面时,我创建了自定义过滤器,优惠券等,但是当您的搜索结果为“未找到产品”时,我不想显示此内容 .

那么问题是,如何在另一个不同于archive-product.php的页面中显示“ woocommerce_no_products_found ”(或搜索结果),它用于显示商店?我是否可以仅针对搜索结果调用函数模板,或者仅使用相同的产品档案文件显示商店而不是商店和搜索结果?

我看到我可以用这个字符串做一个动作......

do_action( 'woocommerce_no_products_found', $wc_no_products_found );

在archive-product php上我有这个......

else {
    /**
     * Hook: woocommerce_no_products_found.
     *
     * @hooked wc_no_products_found - 10
     */
    do_action( 'woocommerce_no_products_found' );
    }

我想也许只为普通商店创建一个页面,然后保持存档产品不变 . 或者相反的归档产品用于搜索结果,然后为主要商店创建页面模板 .

我会喜欢归档产品......

if ( is_shop() ) { call this template file myshop.php }
   if ( is_search() ) { call this template file mysearch.php }

任何建议高度赞赏 . 自从第一次创建一个woocommerce主题,几乎没有PHP技能,请善待并假设总的新手 . 虽然我尽我所能尽快学习:)