Old

WP后台直接回复评论:支持二级无限嵌套评论、@方式、邮件通知

“WP后台直接回复评论:支持二级无限嵌套评论、@方式、邮件通知”是我上个星期就折腾好的功能,目前我和A.shun在用,非常方便。

我一直想要这功能,但一直木有高手去写,于是自己用蛋疼的 jQuery 实现……

前提

【一定要】无限嵌套:完美的WordPress无限嵌套回复方法

【可选】要支持评论回复通知,那么参考:整理: WordPress 评论回复邮件通知代码
ps:好吧,前一篇我卖关子了,其实就这里用用而已……

步骤

开始以前再次提醒:你的主题一定要支持无限嵌套评论!!!

1. 把下面蛋疼的 jQuery 代码存为 admin_reply.js,放在所用主题目录。或者直接点这里下载

WordPress 版本 >= 4.4(2017.03.08 Update

(function ($, window) {
	$(document).ready(function(){
		//////// for WordPress >= 4.4 ////////
		if ( $('#replycontent').length ){
			var $replycontent = $('#replycontent');
			$replycontent.attr('onkeydown','if(event.ctrlKey){if(event.keyCode==13){document.getElementById(\'replybtn\').click();return false}};');
			$('#the-comment-list').on('click', '.vim-r', function(){
				$replycontent.off('focus');
				$('#replybtn').off('click')
				var $thiscomment = $(this).parent().parent().parent().parent(),
						haveParent = $thiscomment.find('td.comment .comment-author').next().is('a') ? 1 : '',
						parentID = haveParent == 1 ? $thiscomment.find('td.comment .comment-author').next().attr('href').split('#')[1].split('-')[1] : '',
						$submitted_on = $thiscomment.find('.submitted-on'),
						atid = '#' + $submitted_on.children('a:first').attr('href').split('#')[1],
						atname = $thiscomment.find('td.author').find('strong').text().replace(/^(\s|\xA0)+|(\s|\xA0)+$/g, ''),
						replyto = '<a href="' + atid + '">@' + atname + '</a>' + " ";
				$replycontent.val('').focus().attr('data-replyto',replyto).attr('data-parent-id',parentID);
				$('#replybtn').on('click', function(){
					$replycontent.val($replycontent.attr('data-replyto') + $replycontent.val());
					$replycontent.attr('data-replyto','').attr('data-parent-id','');
					$('#replybtn').off('click');
				});
				$('#replysubmit .cancel').on('click', function(){
					$replycontent.off('focus');
					$('#replybtn').off('click');
				});
			});
		};
	});
})(jQuery, window);

WordPress 版本 < 4.4Update: 2011.10.30 修正 @xxx 的链接——感谢axiu同志反馈)

jQuery(document).ready(function($){ //WP后台直接回复评论:支持二级无限嵌套评论、@方式、邮件通知 by zwwooooo
     $('.vim-r').click(function(){
         var $submitted_on=$(this).parent().parent().parent().children('.submitted-on');
         if ($submitted_on.children('a').length == 2) {
             var parentID=$submitted_on.find('a:last').attr('href').split('#')[1];
             $('#replyrow').find('#comment_ID').attr('value',parentID);
         }
         var atid = '"#' + $submitted_on.children('a:first').attr('href').split('#')[1].split('-')[1] + '"';
         var atname = $submitted_on.parent().prev('td.author').find('strong').text().replace(/^(\s|\xA0)+|(\s|\xA0)+$/g, '');
         $("#replycontent").attr('value','<a href=' + atid + '>@' + atname + ' </a>\n').focus();
         $("#replycontent").attr('onkeydown','if(event.ctrlKey){if(event.keyCode==13){document.getElementById(\'replybtn\').click();return false}};');
         $('#replybtn').click(function(){
             $("#replycontent").attr('onkeydown','');
         })
     })
 });

2. 然后把下面这段加入到主题的 functions.php 里面去:

function admin_reply_admin_enqueue_scripts( $hook_suffix ) {
    wp_enqueue_script( 'admin-reply-js', get_template_directory_uri() . '/admin_reply.js', false, 'by-zwwooooo' );
}
add_action( 'admin_print_styles', 'admin_reply_admin_enqueue_scripts' );

然后就没有然后了……

zww
or
oooo

声明: 除非注明,ZWWoOoOo文章均为原创,转载请以链接形式标明本文地址
本文地址: https://zww.me/archives/25538

211 comments

  1. 老杨 老杨 Firefox 7 Firefox 7 Windows 7 Windows 7

    先评论了再说
    我那个主题 评论表情有问题 用不了 js问题 改天再找你看看

    沙发
  2. A.shun A.shun Opera Next 12 Opera Next 12 Windows XP Windows XP

    沙发 :oops:

    板凳
  3. derek derek Firefox 7 Firefox 7 Windows 7 Windows 7

    板凳。。。。。。shun太快了

    地板
  4. ......
  5. love02xp love02xp Maxthon 3 Maxthon 3 Windows 7 Windows 7

    唉,看到代码已经有点害怕了,
    改坏了回不来呀:(

    41楼
  6. Kayo Kayo Google Chrome 15 Google Chrome 15 GNU/Linux GNU/Linux

    之前也想弄一个这样的功能,每次都要去文章回复才有“@”回复的功能,实在不方便,现在好了,果断收下代码!

    42楼
  7. wugee wugee Google Chrome 15 Google Chrome 15 Windows 7 Windows 7

    关注一个咯 :idea:

    43楼
  8. 王朋雨博客 王朋雨博客 Internet Explorer 7 Internet Explorer 7 Google Chrome OS Google Chrome OS

    停一下,看看,文章不错

    44楼
  9. Veezy Veezy Safari 5 Safari 5 Mac OS X 10.7 Mac OS X 10.7

    留言多必备~ :grin:

    45楼
  10. 郑永 郑永 Firefox 7 Firefox 7 Windows 7 Windows 7

    貌似你PR又上了。。

    46楼
  11. Bee君 Bee君 Google Chrome 16 Google Chrome 16 Windows 7 Windows 7

    刚刚使用上,刚开始还以为一进后台那个小。。。原来是后台评论页~~

    感谢~

    47楼
  12. Dick_Wu Dick_Wu Google Chrome 17 Google Chrome 17 Windows XP Windows XP

    一整个上午都进不了zww.me。。是神马情况?

    48楼
    • zwwooooo zwwooooo Firefox 7 Firefox 7 Windows 7 Windows 7

      @Dick_Wu
      不会吧,我没收到网站不能访问报告,你什么线路的?

    • Dick_Wu Dick_Wu Google Chrome 17 Google Chrome 17 Windows XP Windows XP

      @zwwooooo
      看来是DNS污染。。。换成8.8.8.8就没问题了。
      我是无锡电信~最近经常这样

    • zwwooooo zwwooooo Firefox 7 Firefox 7 Windows 7 Windows 7

      @Dick_Wu
      囧rz,到处都是弓虽女干

  13. 权子 权子 Google Chrome 14 Google Chrome 14 Windows 7 Windows 7

    嗯哼,不错,研究下。

    49楼
  14. Firm Firm Google Chrome 15 Google Chrome 15 Windows XP Windows XP

    我博客那个嵌套回复实在是丑陋

    50楼
  15. 皇家元林 皇家元林 Firefox 7 Firefox 7 Windows 7 Windows 7

    如果不加这个,默认的评论回复,会不会有邮件通知?

    51楼
  16. 古墓候梅 古墓候梅 Internet Explorer 8 Internet Explorer 8 Windows XP Windows XP

    WP高手,想请教你一个问题,就是我想在博客上弄一个“热门关键词”,就是放在搜索栏旁边,告诉访客大家都子啊搜索什么??

    52楼
  17. 潮人蛤蟆镜 潮人蛤蟆镜 360Safe Explorer 360Safe Explorer Windows XP Windows XP

    我去折腾下 看看效果

    53楼
  18. Wordpress如何实现后台直接回复评论且能邮件通知 | 梦想象牙塔 - pingback on 2011/11/07/ 12:50
    54楼
  19. 集趣 集趣 Google Chrome 13 Google Chrome 13 Windows 7 Windows 7

    这个可以用的哦~ 使用起来也很方便

    55楼
  20. 晓潘 晓潘 Internet Explorer 8 Internet Explorer 8 Windows XP Windows XP

    现在我们都升级了,用外部网站评论啦 来管理评论 :mrgreen:

    56楼
  21. 无冷 无冷 Google Chrome 13 Google Chrome 13 Windows 7 Windows 7

    这个功能好强大

    57楼
  22. 。潇 。潇 Google Chrome 15 Google Chrome 15 Windows 7 Windows 7

    谢谢,我知道了,可是我用的系统自带的……评论模板、

    58楼
  23. 洋洋 洋洋 Google Chrome 17 Google Chrome 17 Windows XP Windows XP

    好像很慢。。我的用慢。不知道怎么回事。。

    59楼
  24. Neeke Neeke Firefox 8 Firefox 8 Windows 7 Windows 7

    码代码是很辛苦的。

    60楼

Leave a Reply