Php Wordpress:如何在单击时添加查询参数

Php Wordpress:如何在单击时添加查询参数,php,ajax,wordpress,Php,Ajax,Wordpress,我目前正在建立一个网站,其中列出了出租公寓。我创建了一个自定义帖子类型,其中有几个与之关联的自定义字段。现在我有一个页面列出了我所有的自定义帖子,查询如下: <?php // args $args = array( 'post_type' => 'lejlighed' ); // get results $the_query = new WP_Query( $args ); // The Loop ?> <?php if( $the_query->ha

我目前正在建立一个网站,其中列出了出租公寓。我创建了一个自定义帖子类型,其中有几个与之关联的自定义字段。现在我有一个页面列出了我所有的自定义帖子,查询如下:

<?php 
// args
$args = array(
    'post_type' => 'lejlighed'
);

// get results
$the_query = new WP_Query( $args );

// The Loop
?>
<?php if( $the_query->have_posts() ): ?>

我想在用户单击链接或选中复选框时添加/更改查询。我使用add_query_arg函数尝试了这一点,但没有成功:

<a href="<?php echo add_query_arg( 'post_nr','6500' ); ?>"> 6500 </a>

“post_nr”是元键,“6500”是元值

其思想是用户能够通过自定义字段(如邮政编码)过滤公寓列表。理想情况下,我希望在不刷新页面的情况下加载新内容,但这是另一回事


因此,我的问题是,如何通过单击元素向查询添加参数?

您可以尝试加载所有可用的帖子,并使用JavaScript过滤它们。这将要求您将筛选数据应用于每篇文章(例如,名为
data zipcode
data postnr
的属性),然后创建筛选按钮(或类似按钮),用于确定要显示的文章类型和时间

另一种选择是创建一个进行后期加载(并返回HTML或JSON)的脚本,然后AJAX在用户每次单击过滤器时将其嵌入。这可以通过向post loader脚本生成一个AJAX请求来实现,该脚本反过来会将正确的帖子输出到主模板中(AJAX请求会将WP_查询参数传递给post loader脚本)


第一个选项在前面有点重,但是第二个选项在每个请求上都需要一些带宽。根据您最初需要显示的帖子数量,您需要决定哪种方式更好。

我必须承认,我对ajax和javascript比较陌生。我真的不知道从哪里开始,即使你的评论应该给我指出正确的方向。对不起,我现在有点赶时间,我会看看今天晚些时候是否可以编辑一些示例。查看WP Codex上的
admin ajax.php
相关文档,WordPress中有一些关于ajax的指针(正确的方法)。