之前讓 WordPress 支援註冊使用者上傳自定義頭像功能 一文,透過安裝 Simple Local Avatars 和 WP User Avatar 外掛,可以讓註冊使用者本地上傳頭像代替預設的 Gravatar 頭像,不過一般都認為外掛安裝多了,會影響速度,那麼我們就以 WP 預設主題 Twenty Fifteen 為例,把這個功能整合到 WordPress 主題中,即可方便使用者,也顯示得主題高大上。

上傳頭像
第一步,WP 後臺安裝外掛頁面,搜尋下載 Simple Local Avatars 外掛。
第二步,將外掛中的 simple-local-avatars.js 複製到 Twenty Fifteen 主題的 js 目錄。
第三步,開啟外掛 simple-local-avatars.php 檔案,將大約第 178 行的:
- wp_enqueue_script( 'simple-local-avatars', plugins_url( '', __FILE__ ) . '/simple-local-avatars' . $script_name_append . '.js', array('jquery'), false, true );
替換為:
- wp_enqueue_script( 'simple-local-avatars', get_template_directory_uri( '', __FILE__ ) . '/js/simple-local-avatars' . $script_name_append . '.js', array('jquery'), false, true );
目的是,將必須的 js 檔案呼叫,從預設的外掛目錄轉到當前主題 JS 目錄中,儲存 simple-local-avatars.php 檔案並複製到 Twenty Fifteen 主題的 inc 目錄。
第四步,開啟 Twenty Fifteen 主題的 functions.php 模板檔案,在最後新增:
- require get_template_directory() . '/inc/simple-local-avatars.php';
完成全部工作。
之後,WP 後臺 → 使用者 → 我的個人資料,在個人資料設定頁面,會發現下面多出本地頭像設定功能。
管理員可以在媒體庫中選擇頭像,其它沒有操作媒體庫許可權的使用者只可以本地上傳頭像。