Когда вы ищете термин, которого нет в базе данных, он будет перенаправлять вас на страницу без результатов в каталоге вашей темы. Проблема в том, что я хочу показать другой заголовок для страницы без результатов, но пока не удалось. Я могу сделать это только с 404 страницы. Вот мой код со страницей 404:
<?php if ( is_404() ) : get_header( '404' ); endif ?>
//404 content
<?php get_footer(); ?>
Как применить скрипт к безрезультатной странице? Это то, что я дошел до сих пор:
<?php if ( is_home() && current_user_can( 'publish_posts' ) ) : ?>
<?php printf( esc_html__( 'Ready to publish your first post? <a href="%1$s">Get started here</a>.'), esc_url( admin_url( 'post-new.php' ) ) ); ?>
<?php elseif ( is_search() ) : get_header( 'noresults' ) ?>
<?php esc_html_e( 'Sorry, but nothing matched your search terms. Please try again with some different keywords.'); ?>
<?php else : ?>
<?php esc_html_e( 'It seems we can’t find what you’re looking for. Perhaps searching can help.'); ?>
<?php endif; ?>
search.php работает для обоих, если результаты поиска найдены или нет.
Откройте файл search.php и используйте этот код в верхней части файла.
global $wp_query;
if(is_search() && 0 === $wp_query->found_posts) {
get_header('noresults');
} else {
get_header();
}
Других решений пока нет …