Мне было интересно, был ли в цикле способ остановить отображение сообщений, если заголовок сообщения содержит определенное ключевое слово?
Спасибо
Вместо использования the_title () используйте get_the_title () . Разница в том, что the_title () выводит заголовок напрямую, а get_the_title () возвращает его. Следовательно, вы можете просто выполнить простое условие:
if(strpos(get_the_title(), 'Keyword') === false) { // Title does not contain Keyword }
Добавьте следующее в начале цикла:
<?php if (stristr(get_the_title(),"keyword")) continue; ?>
Некоторые преимущества этого подхода:
stristr
Существует фильтр wp_title, который может фильтровать содержимое заголовков в чистом виде (введен в прошлом месяце в 3.3, если я хорошо помню).
http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_title
Оба ответа пока приемлемы.Я предпочитаю не по возможности оборачивать куски кода в условные выражения.
if ( preg_match('/keyword/', get_the_title() ) { continue; }
if( !preg_match( "'keyword'", get_the_title() ){ //the loop }
Использование strpos более эффективно;использование preg_match более гибкое, так как вы можете добавить регулярные выражения или список слов позже.