Я сбит с толку и нуждаюсь в помощи со следующим пользовательским поиском, который я использовал в своем веб-сайте Wordpress. Он отлично работал в локальной среде (Local by Flywheel). Но когда он действительно подключился к сети, он перестал работать.
Когда я использую любой «post_type» в $ search_query, например:
$ search_query = array ('post_type' => 'news') ;
Тогда работает нормально.
Но я намерен использовать этот поиск как общий поиск по всему сайту. Отлично работал в моем Local. Любая помощь будет оценена.
<?php
global $query_string;
$query_args = explode("&", $query_string);
$search_query = array();
foreach($query_args as $key => $string) {
$query_split = explode("=", $string);
$search_query[$query_split[0]] = urldecode($query_split[1]); }
$wp_query = new WP_Query($search_query);
if ( $wp_query->have_posts() ) :
global $wp_query;
$total_results = $wp_query->found_posts;
?>
<?php while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?>
<div class="col-md-8 resuls">
<h1>Search result(s): <?php echo $total_results ; ?></b> </h1>
<?php while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?>
<h4><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h4>
<h6><a href="<?php the_permalink(); ?>"><?php the_permalink(); ?></a></h6>
<?php the_content(); ?>
<hr>
<?php endwhile; ?>
</div>
<?php wp_reset_postdata(); ?>
И код формы поиска точно такой же, как и в Local:
<form class="input-group search" method="get" action="<?php echo home_url(); ?>" role="search">
<input type="search" class="form-control search-field" placeholder="<?php echo esc_attr_x( 'Buscar / Search', 'placeholder' ) ?>" value="<?php echo get_search_query() ?>" name="s" />
<span class="input-group-btn">
<button class="btn btn-default" type="submit" role="button" style="margin-left:0;"><i class="icon-search"></i></button>
</span>
</form>