here で与えられた解決法に従って結果を表示するために私はカスタム検索フォームとカスタムテンプレートを使用しています。
概要
これが検索フォームのコードです。
<form method="get" id="advanced-searchform" role="search" action="<?php echo esc_url( home_url( '/' ) ); ?>">
<input type="hidden" name="search" value="advanced">
<select id="my-select1" class="js-example-basic-single isotopeselect" data-filter-group="proyectos" multiple="multiple" name="terms[]">
<?php foreach ($job_terms as $job_term): ?>
<option value=".<?php echo str_replace(' ', '-', str_replace('&', 'and', html_entity_decode($job_term)));?>"><?php echo $job_term;?></option>
<?php endforeach; ?>
</select>
<button type="submit"><span>search</span></button>
<input type="hidden" name="job_listing" value=""/>
</form>
これが検索結果のテンプレートです
<?php
get_header();
$terms=array();
$all=($_REQUEST);
if(isset($_REQUEST["terms"])){
$myterms=$all["terms"];
foreach ($myterms as $myterm) {
$myterm=str_replace(".","",$myterm);
$terms[]=$myterm;
}
}
if($terms){
$tax_query[] = array(
array(
'taxonomy' => 'job_listing_type',
'field' => 'name',
'terms' => $terms
) );
}
$post_type = 'job_listing';
$paged= (get_query_var('paged' )) ? get_query_var('paged'):1;
$args = array(
'paged'=>$paged,
'post_type'=>$post_type,
'posts_per_page'=>1,
'tax_query' => $tax_query,
);
$loop = new WP_Query( $args );
if($loop->have_posts()):?>
<div class="my-services">
<?php
while($loop->have_posts()):$loop->the_post();
the_title();
endwhile;
?>
</div>
<?php endif; ?>
<div class="pagination" id="blog-pagination">
<span class="previous" ><?php previous_posts_link( '←Newer', $loop->max_num_pages ); ?></span>
<span class="next"><?php next_posts_link( 'Older →', $loop->max_num_pages ); ?></span>
</div>
<?php wp_reset_query();?>
<?php get_footer(); ?>
最初の検索結果、URLは
http://example.com/?search=advanced&terms%5B%5D=.Eat&job_listing=
私が次にヒットした後、URLはになります
http://example.com/page/2/?search=advanced&terms%5B0%5D=.Eat&job_listing
しかし何も起こらない、結果は同じまま
私は前にこれをやったことがないので、これを手伝ってください
私はこれを見ました: next_posts_link
New WP_QUERY()を使うときはwp_reset_postdataを使わなければなりません。
<div class="pagination" id="blog-pagination">
<span class="previous" ><?php previous_posts_link( '←Newer', $loop->max_num_pages ); ?></span>
<span class="next"><?php next_posts_link( 'Older →', $loop->max_num_pages ); ?></span>
</div>
if($ loop-> have_posts()):?>に行きます