這幾天Gravatar頭像服務器應該集體被墻了,頭像無法顯示,兵來將擋,水來土掩,上有政策,下有對策,和諧社會靠大家,哈.
利用多說Gravatar頭像中轉服務器替代頭像默認服務器,將下面代碼添加到當前主題functions.php文件中:
function mytheme_get_avatar( $avatar ) {
$avatar = preg_replace( "/http:////(www|/d).gravatar.com/","http://gravatar.duoshuo.com",$avatar );
可惜多說服務穩定性欠佳,有時也會暫時無法顯示頭像,如編輯已發表的文章,并且文章已有評論,還需要在文章編輯頁面打開右上的“顯示選項”去掉“評論”勾選,否則在點擊更新文章按鈕后,還是會向Gravatar頭像服務器發送獲取頭像請求,從而影響頁面加載速度.
使用https方式(SSL)調用Gravatar頭服務器地址
使用方法同上,將下面代碼添加到主題functions.php文件中:
function get_ssl_avatar($avatar) {
$avatar = preg_replace('/.*//avatar//(.*)/?s=([/d]+)&.*/','"https://secure.gravatar.com/avatar/$1?s=$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
貌似添加以上代碼后,一些頭像緩存插件也將失效.
使用Gravatar Fixed 頭像修正插件
插件設置頁面,將Gravatar 服務器和Gravatar SSL 服務器,全部改為:https://secure.gravatar.com
插件下載頁面
另一個比較笨的方法:打開wordpress程序目錄的wp-includes文件夾,找到pluggable.php(WP4.2之前版本)打開,將大約2150至2157行:
if ( is_ssl() ) {
替換為:
$host = 'https://secure.gravatar.com';
或者(支持頭像緩存插件)
$host = 'http://cn.gravatar.com';
WP4.2之后版本,打開wordpress程序目錄的wp-includes文件夾,打開link-template.php,將大約第3604行的:
$url = sprintf( 'http://%d.gravatar.com/avatar/%s', $gravatar_server, $email_hash );
$url = sprintf( 'http://cn.gravatar.com/avatar/%s', $email_hash );
之所以說“笨”是因為下次更新程序,還需要再次修改,不過這個方法最實用.
以上方法主要針對使用用國內主機用戶,使用國外主機這時優勢突顯,并不需要修改任何東西,安裝頭像緩存插件,將頭像緩存到本地,并不影響正常使用.
推薦幾款Gravatar頭像緩存插件
fonts.googleapis.com和gravatar.com被墻,嚴重影響了Wordpress用戶體驗,對新手熟習Wordpress的造成極大障礙.
|
新聞熱點
疑難解答
圖片精選