2010-06-24 2 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

+0

есть пути, указанные в любых столбцах? – Neo

+0

Какую версию WP вы используете? И какие панели администратора вы можете видеть и/или не видеть? (Плюс я предполагаю, что мы говорим о стандартных категориях сообщений, а не о таможенных таксономиях или о таких?) – TheDeadMedic

ответ

1

Я знаю, что это очень датированный пост, но я помещаю это здесь, чтобы его открывали другие, поскольку существует множество потоков по сети без обнаруженного решения. У меня была такая же проблема, и я очень глубоко погрузился в происходящее. Проблема на самом деле с ядром WordPress, и я отправил там биг-код https://core.trac.wordpress.org/ticket/33148. Я бы порекомендовал добавить в него подробности, которые, возможно, пропустили здесь.

Определение проблемы:

Категория не показывается в панели администратора, однако это означает, что есть 6 категорий. Они также видны в базе данных.

Что происходит, WordPress ищет категории, которые не имеют родительского удостоверения личности или связаны с родителем, который существует. Если родительский идентификатор установлен на несуществующий 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'; 

Как вы можете видеть, родитель энергии, но по какой-то причине идентификатор не является правильным. Поэтому дети не связаны правильно. Я могу только предположить, что один из наших пользователей удалил родителя, а затем добавил его вручную, но забыл связать детей.

Поскольку я случайно обрезал имена столбцов таблицы здесь, они находятся чуть выше.

enter image description here enter image description here

После перелинковать категории вы должны увидеть это в базе данных

enter image description here enter image description here

шаги, чтобы исправить Категория (ы):

  1. You может использовать функцию поиска только abov e список категорий для поиска категории, если вы знаете ее имя. Отредактируйте категорию и повторно выберите без родителя ИЛИ выберите родителя, с которым он должен быть связан, и нажмите «Сохранить». Категория должна теперь отображаться в списке категорий, поскольку родительский идентификатор установлен в соответствующее значение, которое существует.
  2. Другой вариант - обновить идентификатор в базе данных до 0 для родителя или идентификатора родителей, если категория является дочерним.

Я выбрал вариант 1, так как могут быть крючки, которые срабатывают при сохранении в плагинах или вашем собственном коде. Я думаю, что есть меньше шансов на какие-либо побочные эффекты.

Теперь категория есть снова:

enter image description here

Смежные вопросы