在Woocommerce中显示产品类别的默认页面模板

时间:2018-02-07 05:41:35

标签: wordpress woocommerce

我遇到了WooCommerce / Wordpress模板的问题。我曾经把一切都搞定了。

我的functions.php文件中包含此代码:

add_filter( 'template_include', 'wpse138858_woocommerce_category_archive_template' );
function wpse138858_woocommerce_category_archive_template( $original_template ) {
    if ( is_product_category() ) {
        return get_template_directory().'/woocommerce/archive-product.php';
    } else {
        return $original_template;
    }
}

此代码为产品类别选择了我的自定义存档模板并购买主页。突然间,它不再起作用了。似乎WordPress不能再使用wp-content/themes/mytheme/woocommerce中的自定义文件了。由于某种原因,单个产品页面和产品类别使用page.php。我通过在我的主题文件夹上创建文件single-product.php修复了单个产品页面的问题。这样做没问题,但我不能对Woocommerce存档页面做同样的事情。

所有存档页面都使用page.php。他们没有pageId,我在某个产品类别页面上打印出var_dump(is_product_category());,结果是错误的。

有没有办法强制产品类别使用archive-product.php模板?类别(存档)页面如何使用page.php模板?

1 个答案:

答案 0 :(得分:2)

在主题add_theme_support( 'woocommerce' );文件中添加functions.php。在此之后,所有WooCommerce模板将按预期工作(假设模板的结构正确)。