最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

wp query - how to load the comment template from a plugin

programmeradmin1浏览0评论

I want to create custom design for the comments. comments_template() will load the default \comments.php.

i have a file inside my plugin commentsnew.php how can i use this file for comments_template()?

file is getting loaded relative to theme directory.

apply_filters( 'comments_template', string $theme_template ) this completely overrides the template but don't want a complete override but apply only if used.

I want to create custom design for the comments. comments_template() will load the default \comments.php.

i have a file inside my plugin commentsnew.php how can i use this file for comments_template()?

file is getting loaded relative to theme directory.

apply_filters( 'comments_template', string $theme_template ) this completely overrides the template but don't want a complete override but apply only if used.

Share Improve this question edited Aug 29, 2019 at 18:57 asked Aug 29, 2019 at 18:05 user145078user145078 2
  • Can you provide some context for why you would want to do this or the problem that this solves? – Tom J Nowell Commented Aug 29, 2019 at 18:24
  • @TomJNowell to have a review template for the custom post that is created inside a plugin – user145078 Commented Aug 29, 2019 at 18:38
Add a comment  | 

1 Answer 1

Reset to default 1

You can use the comments_template filter to alter which file your CPT will use for comments.

function wpse_plugin_comment_template( $comment_template ) {
     global $post;
     if ( !( is_singular() && ( have_comments() || 'open' == $post->comment_status ) ) ) {
        // leave the standard comments template for standard post types
        return;
     }
     if($post->post_type == 'business'){ // assuming there is a post type called business
        // This is where you would use your commentsnew.php, or review.php
        return dirname(__FILE__) . '/review.php';
     }
}
// throw this into your plugin or your functions.php file to define the custom comments template.
add_filter( "comments_template", "wpse_plugin_comment_template" );
发布评论

评论列表(0)

  1. 暂无评论