wordpress 自定义评论表情
发表时间:2012-3-18 评论:0 点击 2,903+
WordPress 默认表情不好看,我们想自定义自己喜欢的表情怎么办。接下来就来看看怎么弄。
把以下代码放入主题functions.php 中,把图片上传到自己主题图片目录。
<?php
//自定义表情路径
add_filter('smilies_src','custom_smilies_src',1,10);
function custom_smilies_src ($img_src, $img, $siteurl){
return get_bloginfo('template_directory').'/img/smilies/'.$img;
//此处路径为自定义图片路径
}
//自定义表情
remove_action('init', 'smilies_init', 5);
add_action('init', 'my_smilies_init', 5);
function my_smilies_init() {
global $wpsmiliestrans, $wp_smiliessearch;
if ( !get_option( 'use_smilies' ) )
return;
if ( !isset( $wpsmiliestrans ) ) {
$wpsmiliestrans = array(
//此处数组可以修改自己可以修改smilies文件夹的图片使之相对应
'ala啊哈哈哈' => 'altahahaha_thumb.gif',
'ala悲催' => 'altbeicui_thumb.gif',
'ala吃货' => 'altchihuo_thumb.gif',
'ala嘿嘿嘿' => 'altheiheihei_thumb.gif',
'ala哼' => 'altheng_thumb.gif',
'ala囧' => 'altjiong_thumb.gif',
'ala么么' => 'altmeme_thumb.gif',
'ala扭啊扭' => 'altniuaniu_thumb.gif',
'ala飘走' => 'altpiaozou_thumb.gif',
'ala上火' => 'altshanghuo_thumb.gif',
'ala衰' => 'altshuai_thumb.gif',
'ala讨厌' => 'alttaoyan_thumb.gif',
'ala吐舌头' => 'alttushetou_thumb.gif',
);
}
if (count($wpsmiliestrans) == 0) {
return;
}
krsort($wpsmiliestrans);
$wp_smiliessearch = '/(?:\s|^)';
$subchar = '';
foreach ( (array) $wpsmiliestrans as $smiley => $img ) {
$firstchar = substr($smiley, 0, 1);
$rest = substr($smiley, 1);
if ($firstchar != $subchar) {
if ($subchar != '') {
$wp_smiliessearch .= ')|(?:\s|^)';
}
$subchar = $firstchar;
$wp_smiliessearch .= preg_quote($firstchar, '/') . '(?:';
} else {
$wp_smiliessearch .= '|';
}
$wp_smiliessearch .= preg_quote($rest, '/');
}
$wp_smiliessearch .= ')(?:\s|$)/m';
}
//显示表情
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('stylesheet_directory').'/img/smilies/'.$smile;
//自定义图片路径
$value = " ".$key." ";
$img = "<img src=\"{$file}\" alt=\"{$smile}\" />";
$imglink = htmlspecialchars($img);
$link .= "<a href=\"#commentform\" title=\"{$value}\" onclick=\"document.getElementById('comment').value += '{$value}'\">{$img}</a> ";
}
echo '<div class="wp_smilies">'.$link.'</div>';
}
?>
在评论模版中comments.php textarea标签前面加入调用函数
<?php wp_smilies(); ?>
代码下载地址,如果自己不想直接放入functions文件中可以直接把smiley.php 文件引入进functions中也一样。使用include(“lib/smiley.php”); 加入,路径具体是什么自己可以修改。