如何只从页面中删除评论部分,而不是从帖子页面中删除?

时间:2010-11-15 作者:Jitendra Vyas

如何仅从页面中删除评论部分,而不从帖子页面中删除?

3 个回复
SO网友:Jan Fabry

如果要在帖子上而不是页面上显示评论和评论表单,则需要拆分模板文件中的逻辑以调用comments_template() 取决于显示的项目类型(帖子或页面)。有两种方法可以做到这一点:或者为两个项目保留一个模板文件,然后使用conditional tags:

if (!is_page()) {
     comments_template();
}
另一种选择是使用single.php 帖子的模板文件和page.php 对于您的页面(请参阅the Template Hierarchy 更多信息)。不要打电话给comments_template() 在页面模板中。如果帖子和页面布局之间没有其他区别,那么一个带有条件标记的组合模板文件可能更便于维护。

如果要“从远处”执行此操作,那么模板文件中已包含对comments_template(), 您可以创建一个挂钩到comments_template 过滤并重定向到目录中的一个空文件(它甚至可能是插件文件本身,因为它只包含PHP代码,不会显示任何内容,但这会让其他人感到困惑)。

add_filter(\'comments_template\', \'no_comments_on_page\');
function no_comments_on_page( $file )
{
    if ( is_page() ) {
        $file = dirname( __FILE__ ) . \'/empty-file.php\';
    }
    return $file;
}

SO网友:Rarst

我很喜欢这个snippet from Hybrid theme at start of comments.php template 如果在每篇文章/每页的基础上不支持或禁用评论,则可以灵活地禁用评论:

if ( !post_type_supports( get_post_type(), \'comments\' ) || ( !have_comments() && !comments_open() && !pings_open() ) )
    return;

SO网友:mireille raad

取决于主题。

检查页面。php代码并删除与注释相关的内容

小心不要破坏设计。

如果你可以发布页面代码。php在这里,希望我们能帮助告诉你需要做的修改

结束

相关推荐

I can't view or add comments

嘿,那里。我刚刚建立了这个网站。http://www.paledogstudios.com 它工作得很好,只是我似乎看不到过去的评论(这个博客是从blogger导入的)或添加评论。我知道这是代码而不是设置,因为有人告诉我,但他没有进一步帮助我。他说这可能在索引上。php帮助