非插件实现wordpress评论表情

07-26 | 夜光 | IT记录

一、首先更改wordpress表情默认路径:

①在WordPress主题的functions.php文件中加入以下代码:

//custom_smilies
function custom_smilies_src($img_src,$img,$siteurl) {
return get_bloginfo('template_directory').'/img/smilies/'.$img;
}
add_filter('smilies_src','custom_smilies_src',1,10);

二、然后将自己的表情上传至主题/img/smilies/目录,命名要与WP默认表情命名一致

三、将smilies.php上传至主题目录,smilies.php文件内容如下,由Willin Kan创作

<script type="text/javascript">
/* <![CDATA[ */
    function grin(tag) {
    	var myField;
    	tag = ' ' + tag + ' ';
        if (document.getElementById('comment') && document.getElementById('comment').type == 'textarea') {
    		myField = document.getElementById('comment');
    	} else {
    		return false;
    	}
    	if (document.selection) {
    		myField.focus();
    		sel = document.selection.createRange();
    		sel.text = tag;
    		myField.focus();
    	}
    	else if (myField.selectionStart || myField.selectionStart == '0') {
    		var startPos = myField.selectionStart;
    		var endPos = myField.selectionEnd;
    		var cursorPos = endPos;
    		myField.value = myField.value.substring(0, startPos)
    					  + tag
    					  + myField.value.substring(endPos, myField.value.length);
    		cursorPos += tag.length;
    		myField.focus();
    		myField.selectionStart = cursorPos;
    		myField.selectionEnd = cursorPos;
    	}
    	else {
    		myField.value += tag;
    		myField.focus();
    	}
    }
/* ]]> */
</script>
<a href="javascript:grin(':?:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_question.gif" alt="" /></a>
<a href="javascript:grin(':razz:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_razz.gif" alt="" /></a>
<a href="javascript:grin(':sad:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_sad.gif" alt="" /></a>
<a href="javascript:grin(':evil:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_evil.gif" alt="" /></a>
<a href="javascript:grin(':!:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_exclaim.gif" alt="" /></a>
<a href="javascript:grin(':smile:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_smile.gif" alt="" /></a>
<a href="javascript:grin(':oops:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_redface.gif" alt="" /></a>
<a href="javascript:grin(':grin:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_biggrin.gif" alt="" /></a>
<a href="javascript:grin(':eek:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_surprised.gif" alt="" /></a>
<a href="javascript:grin(':shock:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_eek.gif" alt="" /></a>
<a href="javascript:grin(':???:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_confused.gif" alt="" /></a>
<a href="javascript:grin(':cool:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_cool.gif" alt="" /></a>
<a href="javascript:grin(':lol:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_lol.gif" alt="" /></a>
<a href="javascript:grin(':mad:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_mad.gif" alt="" /></a>
<a href="javascript:grin(':twisted:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_twisted.gif" alt="" /></a>
<a href="javascript:grin(':roll:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_rolleyes.gif" alt="" /></a>
<a href="javascript:grin(':wink:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_wink.gif" alt="" /></a>
<a href="javascript:grin(':idea:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_idea.gif" alt="" /></a>
<a href="javascript:grin(':arrow:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_arrow.gif" alt="" /></a>
<a href="javascript:grin(':neutral:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_neutral.gif" alt="" /></a>
<a href="javascript:grin(':cry:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_cry.gif" alt="" /></a>
<a href="javascript:grin(':mrgreen:')"><img src="<?php bloginfo('template_directory'); ?>/img/smilies/icon_mrgreen.gif" alt="" /></a>
<br />

四、在主题comments.php文件

“<textarea....”

前面添加如下代码

<?php include(TEMPLATEPATH . '/smilies.php'); ?>
本文标签:
本文链接: no-plugin-smilies/
版权所有: 玻璃泉, 转载请注明本文出处。