我在本地的Wordpress网站上安装了Woocommerce插件,并创建了我自己的自定义主题。
我的主题包含这几个文件:
├── style.css
├── functions.php
├── index.php
里面分别输入了文件名称作为每个文件的标识,
然后,
当我尝试访问Woocommerce商品时,它显示index.php,
当我尝试访问Woocommerce购物车时,它显示index.php,
当我尝试访问Woocommerce分类目录时,它显示index.php,
并不是按照woocommerce模板层级用woocommercer插件下面对应的模板文件显示对应的页面,
当我新建了:
├── single.php
├── page.php
├── cagegory.php
再访问Woocommerce对应页面:
当我尝试访问Woocommerce商品时,它显示single.php,
当我尝试访问Woocommerce购物车时,它显示page.php,
当我尝试访问Woocommerce分类目录时,它显示cagegory.php,
说好的模板层级呢,为什么不按模板层级显示对应的内容,而是显示的wordpress默认主题文件模板?真的是郁了个大闷,
上网查了不少资料发现,原来新版的woocommerce,是不支持直接按woocommerce模板层级对woocommerce进行支持,需要将此函数添加到functions.php文件中,才可以让主题支持woocommerce:
方法代码一:
add_theme_support( ‘woocommerce’ );
方法代码二:
function mytheme_add_woocommerce_support() {
add_theme_support( ‘woocommerce’ );
}
add_action( ‘after_setup_theme’, ‘mytheme_add_woocommerce_support’ );
如果不加,woocommerce的相关模板文件名,模板层级都是不能够被wordpress主题所支持的~