WP-Query: проверьте, пустует ли содержимое сообщения

Я пытаюсь проверить, имеет ли мой пост контент в цикле. В настоящее время я добавил условие в цикл:

if ( $post->post_content ) 

и аргумент в

 wp query ('posts_per_page' => 8). 

Я думал, что это сработало, но на самом деле, WP query найдите последние 8 posts и проверьте содержимое этих 8 lasts последних. Таким образом, он отображает 2 или 3 сообщения.

То, что я хочу, это способ показать последние 8 сообщений с содержанием.

Смотрите, что я имею в виду?

Я очень ценю некоторую помощь 🙂

С наилучшими пожеланиями.

Это невозможно при стандартном WP-запросе, и вам придется использовать использование posts_where до вызова WP_Query.

 function fitler_where($where = ''){ $where .= "AND trim(coalesce(post_content, '')) <>''"; } 

В приведенном выше post_content мы просто post_content сообщения, в которых столбец post_content не пуст.

Затем добавьте фильтр.

 add_filter('posts_where', 'filter_where'); 

Теперь выполните запрос.

 $query = new WP_Query(array('post_type' => 'post', 'posts_per_page' => 8)); 

И затем, когда вы закончите, удалите фильтр из запроса, чтобы он не мешал.

 remove_filter('posts_where', 'filter_where');