2010-06-24 63 views
0

請注意,這不是一個主題或問題。WordPress類別失蹤

這些類別未顯示在管理面板中,但它表示有6個類別。它們也在數據庫中可見。

最近發生了一些事情與託管和任何PHP move_upload功能開始提供有關失蹤TMP路徑錯誤,所以我創建了一個本地php.ini文件指向正確的tmp文件夾(home/user/tmp)和解決的問題。

這似乎是鏈接的。我試圖設置這些在wp-config

define('WP_TEMP_DIR', '/tmp'); 
define('DBCR_CACHE_DIR', '/tmp'); 

但無濟於事。

+0

您是否嘗試過搜索數據庫的任何本地路徑,以確保它們是正確的? – hsatterwhite 2010-06-24 13:53:23

+0

是否有在任何列中指定的路徑? – Neo 2010-06-24 20:40:41

+0

你正在運行什麼版本的WP?哪些管理面板可以看到和/或看不到它們? (另外我假設我們正在討論標準的帖子類別,而不是自定義分類法等等) – TheDeadMedic 2010-06-25 15:47:19

回答

1

我知道這是一篇非常過時的文章,但我把它放在這裏被別人發現,因爲網絡中有很多線程沒有找到解決方案。我遇到了同樣的問題,並對發生的事情做了深入的調查。問題實際上是WordPress核心,我已經在這裏提交了一個bug票據https://core.trac.wordpress.org/ticket/33148。我會建議添加細節,我可能錯過了這裏。

定義問題:

類別未在管理面板示出,然而,它表示 有6類。它們也在數據庫中可見。

正在發生的事情是WordPress是尋找那些沒有父母身份證或鏈接到父那存在類別。如果父ID被設置爲一個不存在的ID(除了0,這意味着沒有父母),那麼類別將不會顯示在列表中。我將附上幾張截圖,以顯示我在數據庫級別之前和之後的含義。

運行的查詢:

//I am on a multisite instance so this is an example of the query using table numbers. 
//If you are on a standard install then wp_terms and wp_term_taxonomy is what you would use. 

SELECT * FROM wp_2_terms terms JOIN wp_2_term_taxonomy tax ON terms.term_id=tax.term_id 
WHERE tax.taxonomy='category'; 

正如你可以看到父能量,但由於某種原因,ID是不正確的。所以孩子們沒有正確的關聯。我只能假設我們的一個用戶刪除了父母,然後手動添加了它,但忘記了鏈接孩子。

因爲我在這裏意外地切斷了表列名稱,他們只是在上面。

enter image description here enter image description here

後重新鏈接的類別,你應該在數據庫

enter image description here enter image description here

步驟看到這個修復categorie(S):

  1. 你可以使用搜索功能如果您知道其名稱,則可以在類別列表中搜索該類別。編輯類別並重新選擇no-parent或選擇它應該鏈接到的父級,然後單擊保存。該類別現在應該顯示在類別列表中,因爲父ID被設置爲存在的適當值。
  2. 另一種選擇是將數據庫中的id更新爲父母或父母標識,如果該類別是孩子。

我選擇了選項1,因爲可能存在在插件或自定義代碼中保存的鉤子。我會認爲有任何不良副作用的機會較少。

現在類是有一次:

enter image description here