Hiro技术站

插件专区新篇—-Hiro.pagenav:自渲染、自解析的分页插件 v1.8更新

WordPress:正确地引入comment-reply.js文件

分类:Hack技巧 发表时间:2009年09月16日 字体大小:12号14号

评论回复功能是自WordPress2.7版本后就有了的功能,它的实现原理是通过引入了一个js文件(也就是我今天讲到的js文件)。不过现在更多的博主们选择了分层留言的插件,这些插件其实也继承了该js文件的功能。而就我个人的博客来说,评论回复分层我是通过引入comment-reply.js文件实现的,没有使用评论插件,所以也没有一些附加的功能。

引入comment-reply.js的方法有三种:

1.方法一:根据判断条件加载

在header.php文件的head标签内添加如下代码:

1
< ?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>

其中的 is_singular() 是集合了is_single()和is_page()两个判断的功能,根据此判断条件判断后只有在但页面时才会加载comment-reply.js文件。

2.方法二:更加健壮的判断条件

同样在header.php文件的head标签内添加代码:

1
2
3
4
< ?php
if ( is_singular() AND comments_open() AND (get_option('thread_comments') == 1))
  wp_enqueue_script( 'comment-reply' );
?>

该段代码的好处是判断条件的增多,使得代码更加健壮。

3.方法三:在function.php中添加action

在function.php文件中添加如下代码:

1
2
3
4
5
6
7
8
9
< ?php
function theme_queue_js(){
  if (!is_admin()){
    if ( is_singular() AND comments_open() AND (get_option('thread_comments') == 1))
      wp_enqueue_script( 'comment-reply' );
  }
}
add_action('get_header', 'theme_queue_js');
?>

主要是通过添加一个action实现过滤加载。

不错不错,已经有 个评论!
  1. 我是沙发,哈哈!

  2. 发现你的文章有向wp DIY 教程转变的倾向,呵呵。

    • 没有没有,最近在准备换工作,所以没多余的时间发表其他的文章!!

  3. 没弄过这方面的东西,不太理解呵呵

    • 我此处的留言回复模式就是引入该js文件实现的,是原生态的。
      而没有使用插件实现!

  4. 我的都故意屏蔽掉这个功能了

    • 我在第一个版本中就没引入该js,而是通过新的js实现@comment-author的方法实现的,该实现方法没什么实际的效果。
      还是引入comment-reply.js比较实用!

  5. 我要学php~~要不然看不太懂~~唉

    • 单独制作wordpress模板的话,没必要学那么多。多看看别人的模板代码就好了。

      PS:wordpress中的条件判断非常实用哦!如:is_page(),is_tag(),is_category(),is_home(),is_single(),is_singular() 等….

  6. ZERO

    试一下效果怎么样

  7. 小飞

    我也在用WordPress ,出现了一个小问题。可以请教你吗? 我在后台回复别人的评论回复不了。提示网页有错误
    commentReply 未定义。您知道怎么解决吗

我要评论

* *