之前讓 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 後台 → 用户 → 我的個人資料,在個人資料設置頁面,會發現下面多出本地頭像設置功能。
管理員可以在媒體庫中選擇頭像,其它沒有操作媒體庫權限的用户只可以本地上傳頭像。