WordPress 媒體上傳錯誤總彙
WordPress 使用時發生的較多的情況就是上傳媒體 (圖片) 是發生的一些錯誤,這裡我們總結一下這些錯誤,以及應對方法:
1. 症狀:WordPress 編輯文章時,點選 「新增媒體」 按鈕無反應
原因:更具 WordPress 官方的解釋, WordPress 為了提高效率要求你所有的 js 要集中到一起,那麼如果主題或者外掛整合了某些 js 檔案,可能會在載入順序上造成一定的阻塞,取消這個功能即可正常 (不會影響你的前端載入,只是針對後臺)
解決方法:使用 ftp 進入你的網站根目錄,找到 wp-config.php 這個配置檔案,新增如下程式碼即可關閉集中,解決問題:define('CONCATENATE_SCRIPTS', false );
2. 症狀:WordPress 文章編輯點選新增媒體時,媒體庫圖片載入不出來 (一直轉圈),並且上傳圖片顯示 「發生錯誤,無法上傳」,而實際上以及上傳成功,但是在外觀--多媒體中可以顯示所有圖片,並可以正常上傳。
原因:我們幫助多個使用者修復過這個問題,總結之後可以發現,在後臺原始碼中<!DOCTYPE html> 的頂部出現別的程式碼 (最上面),這樣一般是由於主題或者外掛載入樣式檔案 (css) 、指令碼檔案 (js) 錯誤,或者是由於使用者自己修改或者新增程式碼錯誤造成的,這樣會造成不符合 W3C 標準,因此一些功能會受到限制
解決方法:如果自己修改過主題或者外掛檔案,可以重新安裝主題,重新安裝外掛即可,也可以重新安裝 WordPress 解決這個問題。
WordPress 登陸後臺出現提示 「Cookies 被阻止」,或者還沒有輸入賬號密碼就顯示 「賬號密碼錯誤」,不能登陸
這個問題我們在幫助使用者解決時,發現出現的最多的 (基本上都是) 是購買的萬網的主機,原因是萬網的主機預設關閉了輸出緩衝區資料塊,一般來說,登陸主機管理後臺--主機環境管理--高階管理中,將輸出緩衝區資料塊設定為開啟即可,如圖:

若是安裝了 WEB 主題公園所出品的購物盒子外掛,設定好前端登陸之後出現這個問題,一般是 php 版本低於 5.3,在虛擬主機選擇 5.3 以上的 php 版本即可 (這個問題也是萬網的主機出現的最多的)
WordPress 主題安裝之後和演示的效果不一樣
市面上現在絕大分部主題安裝之後,所呈現的樣子都和演示的效果網站和效果圖不一樣,基本上是空的,這個是正常的現象,因為主題只是網站的前端展示方式,而展現的內容是需要後臺設定的內容支援的,並且新裝主題有很多設定需要設定之後才能夠顯現。
若主題支援匯入資料和圖片資料,那麼透過匯入資料之後,就可以和演示效果一樣了,新開發的一些主題提供了這個服務,若你感興趣可以瞭解。
WordPress 設定選單時,點選選單頁面右上角的 「顯示選項」 無法展開
這個是由於 WordPress4.2 之後中文版造成的 bug,可以使用一下方案解決 (任選其一解決):
1. 將修復檔案覆蓋,
2. 在外觀中開啟自定義,點選自定義左側的 「選單選項」,點選齒輪按鈕,即可看到顯示選項中的內容,勾選即可
3. 在設定--常規中,將語言設定為英文,回到選單即可開啟顯示選項,勾選所有選項之後回到設定--常規切換語言為中文即可
WordPress 更新、 WordPress 主題或者外掛更新時卡住,前臺後臺均顯示 「正在執行例行維護, 請一分鐘後回來」

出現這個問題可以稍微等一下,若等待 1 分鐘之後還沒有效果,請使用 ftp 進入網站檔案管理根目錄,找到檔案 .maintenance,刪除即可顯示正常。
有時候也會發現這個檔案並不存在 (nginx 平臺上出現過),那麼你可以新建一個 txt 檔案,命名為 1.txt,上傳至伺服器,將檔名改為 .maintenance,上傳之後重新整理 ftp,會發現檔案消失了,再回到網站重新整理即可顯示正常。
WordPress 設定選單時,若選單專案過多導致選單無法儲存
這是由於一般的伺服器或者虛擬主機的 php 設定只允許 1000(含 1000) 以下的變數提交,因此如果選單設定的專案太多,就會導致新增加的專案無法儲存,修改的內容頁無法儲存。
解決方法可以是設定較少的選單專案,分散這些連結到網站的其他的地方,若一定要設定大量的選單,可以透過修改 php.in,修改提交變數的數量:
開啟伺服器的 php.in,找到以下語句:
;How many GET/POST/COOKIE input variables may be accepted
max_input_vars = 1000
將 1000 改為 5000 即可
電腦上傳一張全屏通欄的焦點圖,在筆記本上檢視,兩邊的內容超出看不見了
這也是一個非常常見的誤區,這是由於網頁設計的特性,一般來說全屏輪播的焦點圖都是居中的背景圖片,一般要求我們做到最大的 1920 解析度,所以上傳的圖片是 1920 畫素,而現在相容最小解析度是 1024,因此我們的主要內容都要放在 1024 解析度中。
進入後臺,點選任意或者個別選項,顯示 File not found 錯誤提示或者 404 頁面
如果出現了上述情況,請檢查一下你的瀏覽器上的 url,比如我進入文章--所有文章,正常方式是 http://www.xxx.com/wp-admin/edit.php
出現的錯誤會丟失一段路徑,顯示為 http://www.xxx.com/edit.php
這樣就會造成 404 或者 File not found. 的錯誤,而無法操作後臺了,這個錯誤一般是 LNMP 環境下會出現,解決方法也比較簡單:
在/usr/local/nginx/conf/WordPress.conf 檔案進行修改:
location / {
index index.html index.php;
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
紅色部分為新增的程式碼,新增完成之後重啟 lnmp 就可以解決缺少 wp-admin 路徑問題。
使用 smtp 外掛傳送郵件的服務無法傳送
我們推薦使用 WP-Mail-SMTP 外掛,使用 qq 郵箱進行傳送郵件 (找回密碼、留言提醒等等功能需要發件功能),若是使用 qq 郵箱傳送郵件無法成功你需要注意以下工作是否做好了:
1.qq 郵箱中是否設定開啟了 POP3/SMTP 服務,檢視方法是,在 qq 郵箱的設定--賬戶找到 POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV 服務這一選項,勾選開啟 POP3/SMTP 服務,會提示你使用手機驗證,並提供給你一條授權碼,複製授權碼到記事本,在 WordPress smtp 外掛中的密碼選項中填寫 (現在 qq 郵箱新開的不能 填寫密碼了,要填寫授權碼,以前設定成功的不受影響)
2. 你的伺服器是否安裝並開啟了 openssl 模組,目前幾乎所有提供 smtp 服務的第三方郵箱都是使用 ssl 加密方式,若你的伺服器沒有安裝或者沒有開啟 openssl 的話,也是無法傳送郵件的。下面給你一個方法檢測你的伺服器或者虛擬主機是否安裝並開啟了 openssl:
1. 下載這個檔案 【點選下載】,解壓後將 phpinfo.php 上傳到你的網站根目錄,並使用你的域名/phpinfo.php 訪問
2. 在瀏覽器上按下鍵盤組合鍵 ctrl+f 進行搜尋,一般下面會出現一個搜尋框,搜尋 openssl,若找到如下圖的資訊,那麼就是安裝並開啟了 openssl,若找不到或者與下圖不一樣,那麼就是沒有安裝好或者沒有開啟,那麼你需要聯絡你的伺服器商解決一下這個問題:

升級 WordPress 、或者升級 WordPress 主題、外掛等出現無法安裝這個包 Missing archive file 'C:\WINDOWS\TEMP/homemagic-DxmO8U.tmp'的提示
診斷:這是由於你的伺服器或者虛擬主機的檔案目錄許可權所造成的,WordPress 更新主程式、外掛、主題時,需要將升級安裝包下載到一個臨時資料夾,如果臨時資料夾因為目錄的許可權無法建立,那麼就會出現這個問題。
解決:vps 或獨立伺服器可以直接透過設定相應臨時目錄的許可權來解決這個問題;而使用虛擬主機的站長,可以建立一個 temp 目錄,並設定目錄許可權為可寫。
虛擬主機:在 WordPress 程式根目錄,編輯 wp-config.php 檔案,找到以下程式碼:
/** WordPress 目錄的絕對路徑。 */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
修改為
/** 指定 WordPress 的臨時目錄 */
define('WP_TEMP_DIR', ABSPATH . 'wp-content/temp');
然後在 wp-content 資料夾下新建個 temp 資料夾,設定目錄許可權可讀寫, 即可解決這一問題。