自从用上现在这个主题之后,评论框旁边的表情问题就一直困扰着我,本来这个主题就已经设置了自定义表情,用的是插入php文件的方法(<?php include(TEMPLATEPATH . '/smiley.php'); ?>),在别人的站上是正常显示表情的,但是在我的站上,同样的代码,他就是不显示表情,这个问题令我很郁闷,一直没找到解决办法。
今天闲来无事就折腾了一下,最后得出来的结论,还是成功了。下面说说方法,随便也记录一下,毕竟不是什么高深的技术。
将下面的这段代码复制并粘贴到你主题的comments.php文件中合适的位置(一般是评论框调用代码<?php comment_form(); ?>的顶部或底部):
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> "; } echo '<div class="wp_smilies">'.$link.'</div>'; } ?> <?php wp_smilies();?> <!--smilies--> |
但是上面这段代码调用的是wordpress的默认表情,那我现在是要实现自定义表情怎么办?方法很简单,看到上面代码第9行的代码了吗?就是下面这段
1 |
$file = get_bloginfo('wpurl').'/wp-includes/images/smilies/'.$smile; |
其实一眼就能看出上面有一个路径,没错,上面的那个路径就代表表情的目录,那么我们知道表情目录了那就很简单了,直接把他替换成我们自定义表情的路劲就行了。比如改成下面这样:
1 |
$file = get_bloginfo('wpurl').'/wp-content/themes/dz9/images/smilies/'.$smile; |
smilies 文件夹下就是表情图片了,别搞错了,最终我们需要插入到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-content/themes/dz9/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> "; } echo '<div class="wp_smilies">'.$link.'</div>'; } ?> <?php wp_smilies();?> <!--smilies--> |
好了,搞定!
最后总结下,凡事还是只能靠自己,多做试验多折腾才能成功!
上海监控设备[url=http://www.afvvv.com]上海监控设备[/url]http://www.afvvv.com
想要隐藏这些表情,只显示一个提示表情的文字连接怎样实现呢