Я знаю, что это очень датированный пост, но я помещаю это здесь, чтобы его открывали другие, поскольку существует множество потоков по сети без обнаруженного решения. У меня была такая же проблема, и я очень глубоко погрузился в происходящее. Проблема на самом деле с ядром 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';
Как вы можете видеть, родитель энергии, но по какой-то причине идентификатор не является правильным. Поэтому дети не связаны правильно. Я могу только предположить, что один из наших пользователей удалил родителя, а затем добавил его вручную, но забыл связать детей.
Поскольку я случайно обрезал имена столбцов таблицы здесь, они находятся чуть выше.
После перелинковать категории вы должны увидеть это в базе данных
шаги, чтобы исправить Категория (ы):
- You может использовать функцию поиска только abov e список категорий для поиска категории, если вы знаете ее имя. Отредактируйте категорию и повторно выберите без родителя ИЛИ выберите родителя, с которым он должен быть связан, и нажмите «Сохранить». Категория должна теперь отображаться в списке категорий, поскольку родительский идентификатор установлен в соответствующее значение, которое существует.
- Другой вариант - обновить идентификатор в базе данных до 0 для родителя или идентификатора родителей, если категория является дочерним.
Я выбрал вариант 1, так как могут быть крючки, которые срабатывают при сохранении в плагинах или вашем собственном коде. Я думаю, что есть меньше шансов на какие-либо побочные эффекты.
Теперь категория есть снова:
Вы пробовали поиск в БД для любого из местных путей, чтобы убедиться, что они все правильно? – hsatterwhite
есть пути, указанные в любых столбцах? – Neo
Какую версию WP вы используете? И какие панели администратора вы можете видеть и/или не видеть? (Плюс я предполагаю, что мы говорим о стандартных категориях сообщений, а не о таможенных таксономиях или о таких?) – TheDeadMedic