wordpress 無法儲存佈景設定、編輯文章、變更固定網址原因

昨天安裝完一個新的 wp 並且準備開始設定佈景時卻無法儲存,畫面上只出現 error,原本以為是佈景主題問題,但 google 後發現這問題還滿多人遇到的,於是我換回預設佈景,沒想到也是無法儲存設定,甚至連固定網址也無法變更,按下後會直接跳至首頁。(2016.4.3 發現此問題也會造成不能更新文章)

接下來就是一連串交叉測試,想看解答的直接拉下去看文末就好。

雖然遇到相同問題的人很多,但每個人解法都不太一樣,有的甚至根本自己也不知道作了什麼動作才修好的。於是我先重新傳了一次佈景跟主程式檔案,排除掉是檔案不完整的原因,接著開啟 error_log,只看到一個 Call to undefined function wp() in /home/xxxxx/public_html/wp-blog-header.php on line 14. 的錯誤訊息,又把這錯誤訊息丟上 google ,但還是沒有什麼幫助。

之後我把佈景裝在本機測試,並使用相同版本的主程式:沒問題。
上傳到已安裝過 wp 的相同主機相同網域,不同子網域、不同主程式版本:沒問題。

至此至少可以排除是佈景的問題了,觀察了資料表發現另一個網域用的是 MYISAM,而新安裝的這個是 innodb,原本以為終於找到解答了,轉換格式後依然沒用。

再來,把另一個子網域的資料夾跟資料庫通通複製一份,用那一份直接開啟,沒用。
更改根目錄名稱:沒用。

安裝了上百次(非誇飾法),從沒遇過這麼詭異的事情,就在我萬念俱灰邊看著 CPANEL 後台發呆時,看到了 ModSecurity 選項
2015-10-16164746

點進去一看,只有新安裝的這個網域開啟了 ModSecurity,關閉之後就解決了這個千古謎題(?)。
2015-10-16164812

可喜可賀,可喜可賀。能找到這篇的你,也恭喜你了,省了好幾個小時除錯的時間呢……

wordpress 後台新增外掛或更新時顯示「無法建立目錄」解決法

伺服器系統是 CentOS + DirectAdmin

首先解決新增外掛時需要輸入 FTP 資訊的問題,於 wp-config.php 加入

接著建立一個 who.php 檔案,檔案內容為

於瀏覽器執行 who.php,會顯示出擁有此檔案的使用者,於下一步驟時填入此使用者 (一般為 apache)

SSH 下指令 (更改 apache:apace 為上一步驟顯示的使用者與群組)

或是也可以先在 wp-content 目錄下先建立 uploads 與 upgrade 兩個資料夾,僅更改此兩個目錄的權限就好

參考資料:
3.1.3 auto-upgrade – WordPress Development Stack Exchange
無法建立目錄: wp-content/uploads | Benjr.tw
DirectAdmin File structure & log files | LINUX SYSTEM ADMINISTRATION
Linux – ls / cd / pwd | Benjr.tw
搜尋指令 which, whereis, locate, find的差別 | FAQ Book
鳥哥的 Linux 私房菜 — 檔案與目錄管理
Poy's Blog: Synology 無法更新手動安裝的Wordpress
WordPress Tips:解鎖後台 FTP 上傳安裝限制 » StartOver

WP | 免裝外掛,將廣告加入文章內文中間

將廣告放在文章中間的好處應該不用我多說了,沒有稿費可以賺,所以也不寫前言騙字數XD

打開佈景主題下的 function.php,加入以下程式碼

參考來源:functions – Insert Ad Code in the Middle of a Post

[WP] 解決某些佈景不能顯示悄悄話的問題

某些佈景會將迴響跟引用分開,作為兩個分頁,常常就這樣在前台看不見whisper迴響,解決方法如下:
到佈景主題的comments.php找到

改成

就可以了。