Как не отображать запись, если у нее пустое содержимое

3 апр. 2011 г., 04:26:18
Просмотры: 1.2K
Голосов: 0

У меня есть пользовательский тип записи sites, зарегистрированный через register_post_type, и моя главная страница отображает последние записи, включая записи типа sites.

Есть ли способ настроить так, чтобы записи типа sites (пользовательский тип записи), у которых нет содержимого (пустое тело записи), НЕ отображались?

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

Я не менял основной цикл.

Как я могу изменить цикл (добавить пользовательский запрос) в рамках плагина?

0
Все ответы на вопрос 2
4

По умолчанию в WordPress, если вы создаете новую запись или пользовательский тип записи на основе поста, заполняете заголовок, но не добавляете содержимое и нажимаете "Опубликовать", система сохранит его как черновик вместо публикации. Если запись сохраняется как черновик, она не будет отображаться в списке постов во время цикла.

Можете подробнее рассказать, чего вы пытаетесь достичь? Возможно, существует более простое решение для вашей основной задачи.

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

Вы уже модифицировали цикл, добавляя параметры или создавая пользовательский запрос? Если да, пожалуйста, предоставьте его для начала.

3 апр. 2011 г. 07:37:09
Комментарии

добавил больше информации в моем вопросе

Radek Radek
3 апр. 2011 г. 08:49:04

@Radek это то, что сказал @cwd. записи без тела не публикуются, поэтому они не отображаются, так как остаются в черновиках

Ashfame Ashfame
3 апр. 2011 г. 09:19:21

@Ashfame: у меня это не работает в WordPress 3.0.1. Я только что создал новую запись. Ввел только заголовок, нажал Опубликовать, и я вижу ее на главной странице.

Radek Radek
4 апр. 2011 г. 01:58:02

@Radek О! Я сам не пробовал, поверил @cwd на слово.

Ashfame Ashfame
4 апр. 2011 г. 09:31:58
0
-1

Просто возьмите объект $post внутри вашего цикла и напишите

if ( ! $post->post_content )
    continue;

чтобы пропустить текущую "итерацию" вашего цикла, если запись не имеет содержимого.

10 окт. 2011 г. 13:33:31