無作為
不僅僅是一種態度!

WordPress隨機顯示用戶頭像,本地調用支持動圖

wordpress頭像一直是困惱站長們的一個小問題,默認的Gravatar頭像加載緩慢,那么如何讓他隨機顯示頭像,調用本地圖片呢?

wordpress默認頭像雖然可以設置,不過很多評論留言者并沒有申請Gravatar頭像,只能顯示WordPress自帶的古怪頭像,看著很不爽。

下面分享一段隨機顯示本地評論頭像的代碼,預先準備一些漂亮的圖片代替WordPress自帶的頭像。

添加代碼

將下面代碼添加到當前主題functions.php中:

add_filter( 'get_avatar' , 'local_random_avatar' , 1 , 5 );
function local_random_avatar( $avatar, $id_or_email, $size, $default, $alt) {
    if ( ! empty( $id_or_email->user_id ) ) {
        $avatar = ''.get_template_directory_uri().'/avatar/admin.jpg';
    }else{
        $random = mt_rand(1, 10);
        $avatar = ''.get_template_directory_uri().'/avatar/'. $random .'.jpg';
    }
    $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />";
    return $avatar;
}

其中:mt_rand(1,?10);數字為隨機圖片張數可以自行修改。

準備頭像圖片
在當前主題目錄中新建一個名稱為avatar的文件夾,里面放10張名稱連續的jpg圖片,比如1.jpg、2.jpg、3.jpg………,和一張用于管理員的圖片,名稱為admin.jpg

如何使用動圖

吧動圖gif的格式直接改后綴jpg放入即可調用了。

第三方插件

大家也可以可以安裝本地上傳頭像插件:Simple Local Avatars,讓注冊用戶在后臺上傳頭像,從而顯示自己固定的頭像。

還可以試試,用留言者名稱第一個字母為頭像的插件:WP First Letter Avatar

七牛云緩存代碼

這里可能會有人用到七牛云,這里分享一段緩存Gravatar頭像到七牛云存儲的代碼:

function qiniu_avatar($avatar) {
  $avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*.srcset=.*/','<img src="http://你的緩存域名/avatar/$1-$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
  return $avatar;
}
add_filter( 'get_avatar', 'qiniu_avatar', 10, 3 );

如果你使用了七牛云存儲,可以將上面的代碼添加當前主題functions.php中,可將Gravatar頭像緩存到七牛,具體如何實現,不是本文的重點,可自行網上搜索相關文章。

歷史上的今天:
贊(42) 打賞
所有免費資源、福利、電影、破解軟件未經允許不得轉載:www.btilnp.live無作為 » WordPress隨機顯示用戶頭像,本地調用支持動圖

留下評論 搶沙發

無作為-不僅僅是一種態度

登錄/注冊廣告合作

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

微信掃一掃打賞

广西风采快三