我创建了一个wordpress插件,该插件创建2种自定义帖子类型和激活分类。
分类法名称为“产品”。
我创建了一个文件“ taxonomy-product.php”
<?php
/**
* The template for displaying Product Archieve
*/
get_header(); ?>
<div class="wrap">
<?php if ( have_posts() ) : ?>
<header class="page-header">
</header><!-- .page-header -->
<?php endif; ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
//Query for pulling posts
<?php
$args = array(
'post_type' => 'product_reviews',
'post_status' => 'publish',
);
$products = new WP_Query( $args );
if( $products->have_posts() ) :
?>
<?php get_footer();
此模板包含在plugin文件夹中,并且在调用产品分类法时,该模板会显示,但是会引发致命错误,找不到get_header()
有人可以帮我解决问题,以及如何使用插件添加自定义分类模板。
下面是我用来在插件文件中包含自定义模板的代码:
add_filter('template_include', 'set_template');
function set_template( $template ){
if( is_tax('product'))
$template = plugin_dir_url(__FILE__ ).'templates/taxonomy-product.php';
return $template;
}
这类似于在woo Commerce中包含产品模板。
答案 0 :(得分:0)
您应按路径而不是URL包含文件,因此请更改
$template = plugin_dir_url(__FILE__ ).'templates/taxonomy-product.php';
到
$template = plugin_dir_path(__FILE__ ).'templates/taxonomy-product.php';