Wordpress поиск не показывает результатов
У меня снова одна из тех проблем с "wtf". Я не могу понять, почему моя форма поиска не показывает результат. Смотрите эту веб-страницу: http://sindlar.cz/exemplum/?lang=en
В заголовке есть get_search_form(). Я также создал searchform.php и search.php. Смотрите search.php:
<section id="primary" class="content-area">
<div id="content" class="site-content" role="main">
<?php if ( have_posts() ) : ?>
<header class="page-header">
<h1 class="page-title"><?php printf( __( 'Search Results for: %s', 'shape' ), '<span>' . get_search_query() . '</span>' ); ?></h1>
</header><!-- .page-header -->
<?php shape_content_nav(); ?>
<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', 'search' ); ?>
<?php endwhile; ?>
<?php shape_content_nav( 'nav-below' ); ?>
<?php else : ?>
<?php get_template_part( 'no-results', 'search' ); ?>
<?php endif; ?>
</div><!-- #content .site-content -->
</section><!-- #primary .content-area -->
Страница поиска открывается после нажатия на кнопку поиска, но результатов нет. Может быть, есть проблема с базой данных или что-то? Есть ли у вас какие-либо идеи? Должен ли я добавить что-то в function.php?
Я также заметил, что есть разница между поиском реального контента сайтов и вымышленными словами. Например, если вы введете "О нас" (которая является реальной страницей на моих веб-сайтах), он покажет search.php, но не даст результатов. С другой стороны, если вы введете "Большой грузовик" или "fsdgwdhs" (который я придумал), он отправит обратно другую страницу, кроме search.php. Так что я думаю, что WordPress может знать, что есть некоторые результаты, но это не показывает их. Я не знаю.
Кто-нибудь может мне помочь?
Спасибо!
2 ответа
Пожалуйста, следуйте процедуре ниже, чтобы решить WordPress прерванный поиск
Вот как можно исправить проблему поиска:
Via FTP/Cpanel go to wp-content - themes - theme name you are using - functions.
Open theme-functions.php in a text editor.
Replace with the code below
function gt_search_filter($query) {
if ($query->is_search) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts','gt_search_filter');
*/
<section id="primary" class="site-content">
<div id="content" role="main">
<?php if ( have_posts() ) : ?>
<header class="page-header">
<h1 class="page-title"><?php printf( __( 'Search Results for: %s', 'twentytwelve' ), '<span>' . get_search_query() . '</span>' ); ?></h1>
</header>
<?php twentytwelve_content_nav( 'nav-above' ); ?>
<?php /* Start the Loop */ ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', get_post_format() ); ?>
<?php endwhile; ?>
<?php twentytwelve_content_nav( 'nav-below' ); ?>
<?php else : ?>
<article id="post-0" class="post no-results not-found">
<header class="entry-header">
<h1 class="entry-title"><?php _e( 'Nothing Found', 'twentytwelve' ); ?></h1>
</header>
<div class="entry-content">
<p><?php _e( 'Sorry, but nothing matched your search criteria. Please try again with some different keywords.', 'twentytwelve' ); ?></p>
<?php get_search_form(); ?>
</div><!-- .entry-content -->
</article><!-- #post-0 -->
<?php endif; ?>
</div><!-- #content -->
</section><!-- #primary -->
поместите этот код в файл search.php вместе с вашим классом и CSS