WordPress開發(fā) – 怎么在前臺頁面添加自定義用戶頭像功能?

    主題默認(rèn)使用的 gravatar頭像 在國內(nèi)不怎么方便(雖然全球都在用),為了適應(yīng)國內(nèi)的環(huán)境,我們得來修改下,這次分享的WordPress開發(fā)教程是在前臺操作的,有點(diǎn)麻煩

    主題默認(rèn)使用的 gravatar頭像 在國內(nèi)不怎么方便(雖然全球都在用),為了適應(yīng)國內(nèi)的環(huán)境,我們得來修改下,這次分享的WordPress開發(fā)教程是在前臺操作的,有點(diǎn)麻煩,需要簡便后臺操作的可以看這篇文章《純代碼實(shí)現(xiàn)用戶添加自定義頭像功能

    思路:我們可以給 wordpress主題數(shù)據(jù)庫添加一個用戶自定義字段,然后把前臺上傳的圖片保存到這個自定義字段中,在前臺模板中需要用戶頭像的地方,就調(diào)用這個自定義字段就可以了。

    WordPress開發(fā) - 怎么在前臺頁面添加自定義用戶頭像功能?
    背景圖片 – wordpress開發(fā)

    第一步:在 wp 主題用戶中心的個人資料修改頁面添加用戶頭像上傳表單:

        <form action="" method="post" enctype="multipart/form-data">
        <!-- 用戶圖像 -->
        <div class="change-photo-btn">
        <div class="photoUpload">
           <span><i class="fa fa-upload"></i> 上傳圖像</span>
           <input type="file" class="upload" name="simple_local_avatar"/>
        </div>
        </div>

    這里的 simple_local_avatar 就是用戶頭像自定義字段鍵名。注:上傳圖片的表單必須要加上 enctype=”multipart/form-data” 這個,沒有這個就無法上傳。

    第二步:在WordPress主題的 functions.php 文件中添加上傳圖片的處理函數(shù)代碼:

    //圖片上傳函數(shù):上傳單張圖片
    //參數(shù)1:圖片信息; 參數(shù)2:存放圖片路徑
    function upload_image($info,$path){
    //獲取圖片后綴
    $pre = strrchr($info["name"],".");
    $img_name = date("YmdHis").$pre;
    //錯誤過濾
    if($info["error"]>0){
    switch($info["error"]){
    case 1: echo "文件大小超過php.ini設(shè)置的大小 2M。"; break;
    case 2: echo "文件大小超過表單設(shè)置的大小。"; break;
    case 3: echo "文件只有部分被上傳。"; break;
    case 4: echo "沒有文件被上傳。"; break;
    case 6: echo "找不到臨時文件夾。"; break;
    case 7: echo "文件寫入失敗。"; break;
    }
    echo '<script>alert("返回添加圖片頁面。"); window.history.back(); </script>';
    exit;
    }
    //圖片類型過濾
    $pic_arr = array("image/jpeg","image/jpg","image/pjpeg","image/png","image/x-png","image/gif");
    if(!in_array($info["type"],$pic_arr)){
    echo '<script>alert("上傳的文件必須是 jpg、png、gif格式的。"); window.history.back();</script>';
    exit;
    }
    //圖片大小過濾
    if($info["size"]>(10*1024*1024)){
    echo '<script>alert("上傳圖片的大小不能超過 10M。"); window.history.back();</script>';
    exit;
    }
    if(is_uploaded_file($info["tmp_name"])){
    move_uploaded_file($info["tmp_name"],$path.$img_name);
    return $img_name;
    }
    }

    第三步:上傳圖片并保存到數(shù)據(jù)庫:

        $path = WP_CONTENT_DIR.'/uploads/users_avagar/'; //在 uploads目錄下創(chuàng)建一個 users_avagar目錄
        if(!is_dir($path)){
        mkdir($path);
        }
        //組合 圖片url
        $img_url['full'] = WP_CONTENT_URL.'/uploads/users_avagar/'.upload_image($files,$path);
        update_user_meta($uid,'simple_local_avatar',$img_url); //寫入數(shù)據(jù)庫

    通過上面的 3 步,我們就對wordPress主題實(shí)現(xiàn)了用戶在前臺頁面就可以上傳修改自定義頭像了,然后在需要調(diào)用頭像的地方,使用 get_user_meta() 方法來調(diào)用。不過,這種方法也有一個缺陷:就是沒有跟 gravatar 頭像調(diào)用方法通用,調(diào)用 gravatar 頭像的方法:get_avatar() ,如查想使用 get_avatar 來調(diào)用我們這個自定義頭像,可以添加一些判斷處理,這里就不多做介紹了。

    • 參考來源: http://naivet.xintheme.cn/wp_course/13.html

    這套教程對于需要開發(fā)前臺用戶中心很有用處,如果只是簡單的想要個自定義頭像功能,那么可以參考這篇wordpress開發(fā)教程:

    純代碼實(shí)現(xiàn)用戶添加自定義頭像功能 – wordpres開發(fā)

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來源于互聯(lián)網(wǎng),僅供網(wǎng)友學(xué)習(xí)交流,若您喜歡本文可附上原文鏈接隨意轉(zhuǎn)載。
    無意侵害您的權(quán)益,請發(fā)送郵件至 1355471563#qq.com 或點(diǎn)擊右側(cè) 私信:Muze 反饋,我們將盡快處理。
    ?
    購物車
    優(yōu)惠劵
    搜索
    主站蜘蛛池模板: 亚洲国产精品综合一区在线 | 中文字幕AV一区二区三区人妻少妇| 日本精品一区二区三区在线观看| 国产精品一区二区电影| 久久高清一区二区三区| 精品国产毛片一区二区无码| 国产一区二区三区福利| 无码精品不卡一区二区三区| 久久无码AV一区二区三区| 精品一区二区久久久久久久网站| 亚洲av成人一区二区三区在线观看| 成人精品视频一区二区| 无码少妇一区二区三区芒果| 国产成人欧美一区二区三区| 国产SUV精品一区二区88| 国产乱码精品一区二区三区香蕉| 精品国产鲁一鲁一区二区| 97久久精品无码一区二区天美| 3d动漫精品啪啪一区二区免费 | 无码国产精品一区二区高潮| 欧美一区内射最近更新| 大香伊蕉日本一区二区| 日本一区视频在线播放| 人妻无码一区二区三区四区| 一区二区国产在线播放| 天堂Aⅴ无码一区二区三区| 亚洲乱码一区二区三区在线观看 | 国产麻豆精品一区二区三区| 精产国品一区二区三产区| 国产亚洲综合精品一区二区三区| 国产日韩精品一区二区三区| 老湿机一区午夜精品免费福利| jizz免费一区二区三区| 亚洲乱码日产一区三区| 亚洲国产视频一区| 风间由美在线亚洲一区| 国产福利电影一区二区三区,日韩伦理电影在线福 | 国产综合一区二区| 日韩视频一区二区三区| 亚洲一区二区三区在线| 国产福利一区二区|