最近遇到 WordPress 的頭像在國內一直顯示不出來,問題發生在 WordPress 3.0 以上,WordPress 的頭像服務 Gravatar 的部分服務器在國內訪問困難, 原因是 Gravatar 所使用的 edgecast CDN 服務遇到了某些問題。
WordPress 3.0 通過讀取緩存服務器的方式, 減少了對 www.gravatar.com 的直接請求;
以往直接讀取官方服務器。現在都被分流到 0.gravatar.com,1.gravatar.com 等緩存服務器上了,這次遇上 CDN 故障,所以就出現
了無法讀取頭像的問題。
解決辦法一:插件
只需修改 Gavatar 頭像的訪問方式, 直接請求官方服務器即可。 一些熱心網友已經找到問題, 並給出瞭解決方案。
而現在有更方便的解決辦法, 插件。 Gravatar
Fixed 插件通過函數覆蓋的方式,重新自定義 Gravatar 服務器,直接訪問 www.gravatar.com 讀取頭像,以保證正常訪問。

下載鏈接: gravatar-fixed.zip
解決辦法二:代碼
「0.gravatar.com」 這個網址無法訪問了,「www.gravatar.com」 這個主頁還可以正常訪問。那麼我們可以修改自己的 WordPress,讓它從 「www.gravatar.com」 獲取用户的頭像解決這個問題:
找到 「wp-includes/pluggable.php」 文件,找到代碼:
if ( is_ssl()) {
$host = 『https://secure.gravatar.com』;
} else {
if (!empty($email))
$host = sprintf(http://%d.gravatar.com,(hexdec( $email_hash{0} )% 2 ));
else
$host = 'http://0.gravatar.com';
}
替換為:
if ( is_ssl())
$host = 'https://secure.gravatar.com';
else
$host = 'http://www.gravatar.com';
OK,現在頭像就可以訪問了!本人喜歡用代碼,儘量無插件。
來源:浮雲站 (www.fuyunz.com) 轉載請註明出處,謝謝。