今天打开自己的博客,发现我的评论头像全都挂了,同时也看到Junan也给我留言说
评论头像 挂了~~改一下吧~~文章源自两天的博客-https://2days.org/1887.html
看来真的不妙了,我以为是网络问题呢。。。后来又看到其他几个博友的头像也挂了,我首先想到了不是又被某组织给墙了吧?文章源自两天的博客-https://2days.org/1887.html
真杯具。。。文章源自两天的博客-https://2days.org/1887.html
在群里寻求帮助,yu发了一个解决方法文章源自两天的博客-https://2days.org/1887.html
http://www.yublogger.info/?p=655文章源自两天的博客-https://2days.org/1887.html
同时,我搜了一下,也看到了其他不同的解决方法,现整理如下:文章源自两天的博客-https://2days.org/1887.html
1、yu提供的方法文章源自两天的博客-https://2days.org/1887.html
到wp-includes文件夹下找到pluggable.php 文件 找到(1645行左右。)文章源自两天的博客-https://2days.org/1887.html
- if ( is_ssl() ) {
- $host = 'https://secure.gravatar.com';
- } else {
- if ( !emptyempty($email) )
- $host = sprintf( "http://%d.gravatar.com", ( hexdec( $email_hash{0} ) % 2 ) );
- else
- $host = 'http://0.gravatar.com';</pre>
- 改成
- <pre lang="PHP">if ( is_ssl() )
- $host = 'https://secure.gravatar.com';
- else
- $host = 'http://www.gravatar.com';
2、同样也是在wp-includes文件夹下找到pluggable.php 文件找到(1645行左右)文章源自两天的博客-https://2days.org/1887.html
- if ( is_ssl() ) {
- $host = 'https://secure.gravatar.com';
- } else {
- if ( !emptyempty($email) )
- $host = sprintf( "http://%d.gravatar.com", ( hexdec( $email_hash{0} ) % 2 ) );
- else
- $host = 'http://0.gravatar.com';
- }
将其中的”http://%d.gravatar.com“,”http://0.gravatar.com“改为”http://www.gravatar.com“文章源自两天的博客-https://2days.org/1887.html
即:
- if ( is_ssl() ) {
- $host = 'https://secure.gravatar.com';
- } else {
- if ( !emptyempty($email) )
- $host = sprintf( "http://www.gravatar.com", ( hexdec( $email_hash{0} ) % 2 ) );
- else
- $host = 'http://www.gravatar.com';
- }
其实以上两种方法原理就是使用“www.gravatar.com”这个Gravatar主站的服务器代替“0.gravatar.com”或者其他被墙掉的服务器,虽然速度还是很慢,但是最起码比头像不加载好得多。
3、Gravatar头像本地化
①.首先下载gravatar头像本地化组件,解压缩,上传,路径自定义,如在根目录下建立gravatar目录。
②.gravatar 目录内应该有两个文件夹: cache 和 profile;三个文件: index.php, .htaccess, mysql.sql。
③.更改cache文件夹的权限为777以顺利完成头像的缓存。
④.本地新建一个php文件,写入以下内容,文件名 avatar.php,上传至profile文件夹内。请自行更改相应内容符合自己的需求,切记要放置默认头像。
- $config['default'] = 'http://domain.com/default-gravatar.png';//无头像时返回的默认头像路径
- $config['rating'] = 'PG';//gravatar的内容级别
- $config['size'] = 64;//头像尺寸
⑤.编辑.htaccess文件(注意不是根目录下面的.htaccess文件,而是组件包内的.htaccess文件),默认
- RewriteRule . index.php [L]
请依照你的实际放置目录修改,比如:
- RewriteRule . /gravatar/index.php [L]
⑥.修改 wp-includes/pluggable.php:大概在1523行处有一个如下的代码,把if开始到endif结束替换为下面的代码。
- <?php
- if ( !function_exists( 'get_avatar' ) ) :
- / Retrieve the avatar for a user who provided a user ID or email address.
- @since 2.5
- @param int|string|object $id_or_email A user ID, email address, or comment object
- @param int $size Size of the avatar image
- @param string $default URL to a default image to use if no avatar is available
- @param string $alt Alternate text to use in image tag. Defaults to blank
- @return string <img> tag for the user's avatar
- /
- function get_avatar( $id_or_email, $size = '96', $default = '', $alt = false ) {
- if ( ! get_option('show_avatars') )
- return false;
- if ( false === $alt)
- $safe_alt = '';
- else
- $safe_alt = esc_attr( $alt );
- if ( !is_numeric($size) )
- $size = '96';
- $email = '';
- if ( is_numeric($id_or_email) ) {
- $id = (int) $id_or_email;
- $user = get_userdata($id);
- if ( $user )
- $email = $user->user_email;
- } elseif ( is_object($id_or_email) ) {
- if ( isset($id_or_email->comment_type) && '' != $id_or_email->comment_type && 'comment' != $id_or_email->comment_type )
- return false; // No avatar for pingbacks or trackbacks
- if ( !emptyempty($id_or_email->user_id) ) {
- $id = (int) $id_or_email->user_id;
- $user = get_userdata($id);
- if ( $user)
- $email = $user->user_email;
- } elseif ( !emptyempty($id_or_email->comment_author_email) ) {
- $email = $id_or_email->comment_author_email;
- }
- } else {
- $email = $id_or_email;
- }
- $host = 'http://2days.org'; //注意这里要修改为你的博客的地址
- if ( !emptyempty($email) ) {
- $out = "$host/gravatar/cache/avatar/";
- $out .= md5( strtolower( $email ) );
- $avatar = "<img alt='{$safe_alt}' src='{$out}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />";
- } else {
- $avatar = "<img alt='{$safe_alt}' src='{$default}' class='avatar avatar-{$size} photo avatar-default' height='{$size}' width='{$size}' />";
- }
- return apply_filters('get_avatar', $avatar, $id_or_email, $size, $default, $alt);
- }
- endif;
- ?>
到这里把Gravatar头像缓存到本地的工作就完成了详细的步骤可以点击这里去查看。
以上来自飞晏博客,部分修改。
好了,修改完毕以后打开你的文章页,看看评论者的头像是不是都显示出来了?
本站文章大部分始于原创,用于个人学习记录,可能对您有所帮助,仅供参考!
江苏省镇江市 33F
野火烧不尽春风吹又生。。。
山东省滨州市 B1
@ 邪恶漫画 啥意思???
台湾省 32F
按饮茶要领煮茶叶蛋
根据沏茶温度宜在80-90℃的饮茶要领,做茶叶蛋的方法:试着在蛋煮熟并敲碎后待水温略降时放入茶叶和调料浸泡. 这样制作的茶叶蛋茶香更浓. 要注意的是, 第二天吃前加温也不要煮沸.
广东省湛江市 B1
@ 两天小说吧 @两天小说吧, 你自己都在自己博客上来垃圾评论?
山东省滨州市邹平县 B2
@ 希丸嘉 @希丸嘉, 我觉得这些评论很好。 8:)
美国 31F
2 熬补药的方法
补药要熬煎得法, 功效才高.
(1)最好用有盖的陶瓷砂锅. 先将药物用净冷水浸泡药物吸水涨起后, 再加些水,以略淹过药物为宜.
(2)炉煎时, 先用旺火, 待药煮沸后再改用微火, 以免药汁溢出或过快熬干. 煎药时可用筷子将药翻动 但不要频频掀锅, 以减少药物成分损失.
(3)煎药时间大约为:头煎煮沸后熬40~50分钟;二煎煮沸40分钟左右. 如煎药时间未到, 发现水少时, 可加水再煎.
美国 30F
熬和烩的不同点
熬和烩, 都是用片、块、丁、丝、条等小型原料, 先煸炒断生, 然后加调料和汤汁煮熟.
所不同的是, 熬的原料单一, 不勾芡, 如熬白菜. 而烩常是多种原料, 出锅时须勾芡, 如烩 鸭四件等.
美国 29F
4 熬粥如何防溢
熬大米粥、小米粥, 或檬C追拱局? 稍不注意便会溢锅. 如果在熬粥时往锅里加5~6滴植物油或动物油, 就可避免粥汁溢锅了
比利时 28F
未曾清贫难成人,不经打击总天真!
阿根廷 27F
有时候,这个世界很大很大,大到我们一辈子都没有机会遇见。有时候,这个世界又很小很小,小到一抬头就看见了你的笑脸。所以,在遇见时,请一定要感激;相爱时,请一定要珍惜;转身时,请一定要优雅;挥别时,请一定要微笑。
香港 26F
哎。。。
河南省郑州市 25F
不错不错 支持
山东省滨州市 B1
@ 玻璃棉 @玻璃棉, 呵呵,谢谢支持。
伊朗 24F
野火烧不尽春风吹又生。。。
广东省东莞市 23F
没这么复杂吧?
山东省滨州市 B1
@ 竹下无为梦 @竹下无为梦, 多几种方法而已~~
湖南省长沙市 22F
我用的是改域名的方法
山东省滨州市 B1
@ 秦大少 @秦大少, 最初我也是,现在安了个插件~~
广东省广州市花都区 21F
修改为 WP 3.1以前的什么地址就可以喇~不用放本地缓冲~~哈~
我是使用 1、yu提供的方法~~哈~
山东省滨州市 B1
@ Junan @Junan, 我现在安了个插件。。。
河南省郑州市 20F
我是缓存到本地了。
山东省滨州市 B1
@ 园子 @园子, 人多了其实也挺占空间的。。
浙江省杭州市 19F
这个code显示不错,是什么插件啊~~~
山东省滨州市 B1
@ 三叶草 @三叶草, 是 WP-CODEBOX~~