Intereting Posts
Как передать параметр, который заканчивается тем, что является частью имени класса с помощью короткого кода WordPress has_term if / echo else / функция эха Как отображать виджет, доступный для всех тем Как фильтровать сообщения по формату и категории через URL? $ post> ID выводит неверный идентификатор сообщения Cron не стреляет Как использовать WordPress Plugin Сообщения 2 Сообщения от Scribu? добавить пользовательские столбцы пользователю Как создать отображаемый индекс сообщений в определенной категории Сообщение не исчезает Сообщения и Страницы: 404 Страница не найдена Разбиение страницы с помощью настраиваемой петли Перенаправить на страницу настроек после установки Получить шаблонную часть с использованием пользовательского таксономического термина Изменение таксономических страниц для исключения элементов в таксономиях детей

the_content () возвращает null только в одной категории, хотя есть контент

В сильно настраиваемом блоге друга есть категория с определенным файлом categoryname-single.php для отображения сообщений.

По всей видимости, по какой-то особой причине, со вчерашнего дня, the_content() больше не возвращает никакого контента для сообщений в этой категории, даже несмотря на то, что back-end WP четко показывает контент в сообщении.

Все остальные категории не затронуты.

То, что я попробовал / исключил:

  • echo get_the_content() PHP нет: я попытался использовать echo get_the_content() , но безрезультатно.

  • Я работаю над правильным файлом: Когда я изменяю что-то еще в файле или жестком коде HTML-текст в нем, он отображается на странице. Это также исключает любые проблемы с кешированием

      <? echo "start"; the_content(); echo " end"; ?> // outputs "start end"; 
  • Содержимое физически отсутствует, оно не просто скрыто или что-то еще: я проверил DOM с помощью инспектора DOM и просмотрел исходный код HTML. Там, где предполагается быть довольным, ничего нет.

  • Это затрагивает все статьи этой категории; ни один из них не был изменен в течение нескольких недель. Все они опубликованы.

  • Проблема не вызвана каким-то коротким кодом, который не анализируется: я попытался ввести чистый текст в сообщение с теми же результатами.

  • Не существует the_ID() : the_ID() возвращает правильный идентификатор сообщения.

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

Вчера была некоторая установка и удаление плагинов и некоторое редактирование файлов (хотя и чисто гигиенических мер, таких как удаление лишних комментариев и т. Д.) Владельцем блога. Я не могу исключить, что одна из этих причин вызвала проблему, но я не могу понять, как это сделать.

Я в конце своего ума. Мои вопросы:

  • Есть ли способ вывести необработанный, нефильтрованный пост HTML, чтобы выяснить, является ли это фильтром-изгоем, удаляющим весь контент в этой конкретной категории по какой-то странной причине?

  • Что еще может привести к оптовному исключению контента только в одной категории?

  • Есть ли у кого-нибудь другие идеи относительно того, как отлаживать это?

Есть ли способ вывести необработанный, нефильтрованный пост HTML, чтобы выяснить, является ли это фильтром-изгоем, удаляющим весь контент в этой конкретной категории по какой-то странной причине?

Да, вы можете использовать $post->post_content . Попробуйте добавить что-то вроде:

 echo '<pre>'.$post->post_content.'</pre>'; 

перед the_content() в файле шаблона.

Что еще может привести к оптовному исключению контента только в одной категории?

Поскольку вы говорите, что вы можете видеть содержимое на заднем конце, нет удаления и, скорее всего, что-то связано с крючком фильтра, связанным с крюком the_content .

попробуйте отключить свои плагины и активировать тему один за другим, чтобы увидеть, какой из них вызывает ее. И если это не так, попробуйте переключиться на тему по умолчанию, посмотрите, является ли это причиной.

  if ( have_posts() ) while ( have_posts() ) the_post(); 

(но не раньше – странные).