首页 > CMS > Wordpress > 正文

实现wordpress后台回复评论支持插入表情

2024-09-07 00:51:41
字体:
来源:转载
供稿:网友

个人喜欢在评论的时候带表情,当然本人的小站评论回复也一样,下面是我实现在wordpress后台回复评论插入表情的方法,有兴趣的朋友可以看下.

下面是简单明了的步骤方法.

1.functions.php 部分,就是把下面的代码扔 functions.php:

  1. //////// 获取表情按钮,源码 willin 改进 zwwooooo 
  2. function zfunc_smiley_button($custom=false, $before=''$after=''){ 
  3.     if ($custom==true) 
  4.         $smiley_url=get_template_directory_uri().'/images/smilies'
  5.     else 
  6.         $smiley_url=site_url().'/wp-includes/images/smilies'
  7.     echo $before
  8.     ?> 
  9.         <a href="javascript:grin(':?:')"><img src="<?php echo $smiley_url; ?>/icon_question.gif" alt="" /></a> 
  10.         <a href="javascript:grin(':razz:')"><img src="<?php echo $smiley_url; ?>/icon_razz.gif" alt="" /></a> 
  11.         <a href="javascript:grin(':sad:')"><img src="<?php echo $smiley_url; ?>/icon_sad.gif" alt="" /></a> 
  12.         <a href="javascript:grin(':evil:')"><img src="<?php echo $smiley_url; ?>/icon_evil.gif" alt="" /></a> 
  13.         <a href="javascript:grin(':!:')"><img src="<?php echo $smiley_url; ?>/icon_exclaim.gif" alt="" /></a> 
  14.         <a href="javascript:grin(':smile:')"><img src="<?php echo $smiley_url; ?>/icon_smile.gif" alt="" /></a> 
  15.         <a href="javascript:grin(':oops:')"><img src="<?php echo $smiley_url; ?>/icon_redface.gif" alt="" /></a> 
  16.         <a href="javascript:grin(':grin:')"><img src="<?php echo $smiley_url; ?>/icon_biggrin.gif" alt="" /></a> 
  17.         <a href="javascript:grin(':eek:')"><img src="<?php echo $smiley_url; ?>/icon_surprised.gif" alt="" /></a> 
  18.         <a href="javascript:grin(':shock:')"><img src="<?php echo $smiley_url; ?>/icon_eek.gif" alt="" /></a> 
  19.         <a href="javascript:grin(':???:')"><img src="<?php echo $smiley_url; ?>/icon_confused.gif" alt="" /></a> 
  20.         <a href="javascript:grin(':cool:')"><img src="<?php echo $smiley_url; ?>/icon_cool.gif" alt="" /></a> 
  21.         <a href="javascript:grin(':lol:')"><img src="<?php echo $smiley_url; ?>/icon_lol.gif" alt="" /></a> 
  22.         <a href="javascript:grin(':mad:')"><img src="<?php echo $smiley_url; ?>/icon_mad.gif" alt="" /></a> 
  23.         <a href="javascript:grin(':twisted:')"><img src="<?php echo $smiley_url; ?>/icon_twisted.gif" alt="" /></a>//Vevb.com 
  24.         <a href="javascript:grin(':roll:')"><img src="<?php echo $smiley_url; ?>/icon_rolleyes.gif" alt="" /></a> 
  25.         <a href="javascript:grin(':wink:')"><img src="<?php echo $smiley_url; ?>/icon_wink.gif" alt="" /></a> 
  26.         <a href="javascript:grin(':idea:')"><img src="<?php echo $smiley_url; ?>/icon_idea.gif" alt="" /></a> 
  27.         <a href="javascript:grin(':arrow:')"><img src="<?php echo $smiley_url; ?>/icon_arrow.gif" alt="" /></a> 
  28.         <a href="javascript:grin(':neutral:')"><img src="<?php echo $smiley_url; ?>/icon_neutral.gif" alt="" /></a> 
  29.         <a href="javascript:grin(':cry:')"><img src="<?php echo $smiley_url; ?>/icon_cry.gif" alt="" /></a> 
  30.         <a href="javascript:grin(':mrgreen:')"><img src="<?php echo $smiley_url; ?>/icon_mrgreen.gif" alt="" /></a> 
  31. <?php 
  32.     echo $after
  33.  
  34. //////// Ajax_data_zfunc_smiley_button by zwwooooo 
  35. function Ajax_data_zfunc_smiley_button(){ 
  36.     if( isset($_GET['action'])&& $_GET['action'] == 'Ajax_data_zfunc_smiley_button'  ){ 
  37.         nocache_headers(); 
  38.  
  39.         zfunc_smiley_button(false, '<br />'); 
  40.  
  41.         die(); 
  42.     } 
  43. add_action('init''Ajax_data_zfunc_smiley_button'); 
  44.  
  45. //////// 后台回复评论支持表情插入 by zwwooooo 
  46. function zfunc_admin_enqueue_scripts( $hook_suffix ) { 
  47.     wp_enqueue_script( 'zfunc-comment-reply', get_template_directory_uri() . '/admin_reply.js', false, 'by-zwwooooo' ); 
  48. add_action( 'admin_print_styles''zfunc_admin_enqueue_scripts' ); 

2.然后是在所用主题目录里面新建 admin_reply.js,内容如下:

  1. ///// 适用于 WordPress 3.8,如果较老版本请把 #comments-form 替换为 #icon-edit-comments,或者干脆把第4行和第11行删除/注释掉。 
  2. jQuery(document).ready(function($){ 
  3.     var data_zfunc_smiley_button=''
  4.     if ($('#comments-form').length) { 
  5.         $.get('./?action=Ajax_data_zfunc_smiley_button'
  6.             function (data) { 
  7.                 data_zfunc_smiley_button=data; 
  8.                 $('#qt_replycontent_toolbar input:last').after(data_zfunc_smiley_button); 
  9.             } 
  10.         ); 
  11.     } 
  12. }); 
  13.  
  14. function grin(tag) { 
  15.     var myField; 
  16.     tag = ' ' + tag + ' '
  17.         if (document.getElementById('replycontent') && document.getElementById('replycontent').type == 'textarea') { 
  18.         myField = document.getElementById('replycontent'); 
  19.     } else { 
  20.         return false; 
  21.     } 
  22.     if (document.selection) { 
  23.         myField.focus(); 
  24.         sel = document.selection.createRange(); 
  25.         sel.text = tag; 
  26.         myField.focus(); 
  27.     } 
  28.     else if (myField.selectionStart || myField.selectionStart == '0') { 
  29.         var startPos = myField.selectionStart; 
  30.         var endPos = myField.selectionEnd; 
  31.         var cursorPos = endPos; 
  32.         myField.value = myField.value.substring(0, startPos) 
  33.                       + tag 
  34.                       + myField.value.substring(endPos, myField.value.length); 
  35.         cursorPos += tag.length; 
  36.         myField.focus(); 
  37.         myField.selectionStart = cursorPos; 
  38.         myField.selectionEnd = cursorPos; 
  39.     } 
  40.     else { 
  41.         myField.value += tag; 
  42.         myField.focus(); 
  43.     } 
  44. }

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表