如何从WordPress插件加载模板文件

时间:2017-11-01 作者:Leon Tinashe

我创建了一个插件,它可以显示推荐信,当单击每个推荐信时,它会重定向到单个页面。因此,我编写了这段代码,它正确地将单个视图定向到我创建的视图,但仅在该页面中,它给了我一个未定义的get_header();get_footer()

//controller
class Jetty_Testimonials_Display_Single_Template{

  public function init(){

    //add_filter( \'template_include\', array($this, \'jetty_get_template_hierarchy\'));
    add_filter( \'template_include\', array($this, \'jetty_template_chooser\'), 99);

  }

  public function jetty_template_chooser( $template ) {

      $post_id = get_the_ID();

    if ( get_post_type( $post_id ) != \'jetty-testimonials\' ) {
        return $template;
    }

    if ( is_single()  ) {
            return plugin_dir_url( __FILE__ ) . \'../templates/single-jetty-testimonial.php\';
    }

  }
<?php
/**
 *@uses output the single testimonial details
 * @package jetty-testimonials
 * @version 1.0.0
 */

get_header(); ?>
            <?php
            global $post_id;

            print_r($post_id);
            /* Start the Loop
            while ( have_posts() ) : the_post();

                get_template_part( \'template-parts/post/content\', get_post_format() );

            endwhile; // End of the loop.*/
            ?>

<?php get_footer();?>

1 个回复
SO网友:megi

您可以检查以下代码:根据您的要求更改页面slug“gym dashboard”。

<?php
function rt_include_gym_dashboard_page_template( $template ) {
    if ( is_page( \'gym-dashboard\' )  ) {
            return plugin_dir_path( __FILE__ ) . \'templates/content-gym-dashboard.php\';
    }
    return $template;
}
add_filter( \'template_include\', \'rt_include_gym_dashboard_page_template\', 99 );

结束

相关推荐

Taxonomy Templates

我不太明白如何链接到我的分类法模板。我需要做一个临时页面并从那里查询我的条款吗?我当前正在使用分类层次结构:Taxonomy$labels = array( \'name\' => __( \'Product Categories\' ), \'singular_name\' => __( \'Product Category\' ), \'search_items\' =>