17行代码为 wordpress 添加评论表情列表

WordPress 添加评论表情列表可以用插件解决,但把它集成到模板中更方便日后维护。这段代码不是我写的,我只是把它从一个叫做 wp-smilies 的插件中扒了出来,不加注释它只有17行代码,没有必要让这个文件独立存在加载。
使用方法:把代码放到模板 comments.php 文件中的合适位置,效果见本站。
具体代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!--smilies-->        
<?php
function wp_smilies() {
	global $wpsmiliestrans;
	if ( !get_option('use_smilies') or (empty($wpsmiliestrans))) return;
	$smilies = array_unique($wpsmiliestrans);
	$link='';
	foreach ($smilies as $key => $smile) {
		$file = get_bloginfo('wpurl').'/wp-includes/images/smilies/'.$smile;
		$value = " ".$key." ";
		$img = "<img src=\"{$file}\" alt=\"{$smile}\" />";
		$imglink = htmlspecialchars($img);
		$link .= "<a href=\"#commentform\" title=\"{$smile}\" onclick=\"document.getElementById('comment').value += '{$value}'\">{$img}</a>&nbsp;";
	}
	echo '<div class="wp_smilies">'.$link.'</div>';
}
?>
<?php wp_smilies();?>
<!--smilies-->

感谢 wp-smilies 的作者 ThinkAgain,如果你感觉此文不妥,请来信告知。

20 thoughts on “17行代码为 wordpress 添加评论表情列表

  1. Pingback: 17行代码为Wordpress增添表情评论 – 老衲禅院

  2. 用了此代码,发现表情总是插入到评论内容最后面,怎么不能放在中间啊?

发表评论

电子邮件地址不会被公开。

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">