在不同页面显示自定义字段筛选结果


Display custom field filter results on different page

在我的Wordpress网站上,我通过自定义字段在2个不同的地方过滤博客文章。在一个页面上,我通过querystring传递值,然后使用查询帖子在同一页面上显示过滤器结果,效果很好。

现在,我的问题是,如果我想使用相同的过滤器,但在不同的页面上显示结果,我该怎么做?

传递查询字符串的链接:

<a href="?location=National">NATIONAL</a>
查询文章

<?php
       $location = $_GET['location'];
       $catid = $category_link;
        $sps = array(
        'post_type' => 'post', 
        'posts_per_page' => -1,
        'cat' => $catid,
        'order' => DESC,
        'orderby' => date,
        'meta_key' => 'location',
        'meta_value' => $location);
 ?>

显示结果

<?php query_posts($sps); ?>
 <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
 <li> 
  <?php
      if ( has_post_thumbnail()) 
     {
      echo '<a href="' . get_permalink($post->ID) . '" class="thumbnail_image_link">';
      the_post_thumbnail();
      echo '</a>';
     }
     ?>
 </li>
<?php endwhile; else: ?>   
    <p>There are currently no results available</p>
<?php endif; ?>

我是否可以修改此代码以在另一个页面上显示?

just change

<a href="?location=National">NATIONAL</a>

让我们假设你的页面id是12

<a href="<?php echo esc_url(home_url('/?page_id=12&&location=National')); ?>">NATIONAL</a>
并使用相同的查询来检索该页面上的帖子.....