现在,我正在将一个下拉表单提交到它自己的页面(action=“”),以筛选显示的帖子。
我不想刷新页面,因为页面会重置表单。有没有一种方法可以使用ajax查询/过滤帖子?
现在,我正在将一个下拉表单提交到它自己的页面(action=“”),以筛选显示的帖子。
我不想刷新页面,因为页面会重置表单。有没有一种方法可以使用ajax查询/过滤帖子?
我同意“Vinicius”的回答,但有以下变化:
更改type: \'GET\'
到type: \'POST\'
更改ajax: 1
到action: \'filter_posts\'
更换add_action(\'init\', \'check_ajax\');
使用:
add\\u action(\'wp\\u ajax\\u filter\\u posts\',\'check\\u ajax\');add\\u action(\'wp\\u ajax\\u nopriv\\u filter\\u posts\',\'check\\u ajax\');
移除:
if(!isset($\\u POST[\'ajax]])返回false;
是的,但你得努力一点。假设您通过jQuery发送以下变量:
$.ajax({
type: \'GET\',
url: location.href,
data: {
ajax: 1,
category_id: <some_id>
},
success: function(data){
$(\'.posts\').html(data);
}
});
然后,您将验证请求,如:add_action(\'init\', \'check_ajax\');
function check_ajax() {
if (!isset($_POST[\'ajax\']))
return false;
$query = new WP_Query( \'cat=\' . intval($_POST[\'category\']) );
while( $query->have_posts() ) {
$query->the_post();
?>
<div class="<?php post_class(); ?>">
<h2> ... <?php the_title(); ?> ... </h2>
... your post template
</div>
<?php
}
exit();
}
它还远远没有完成,也没有经过测试,但我希望它能给你一些指导=D您是否在没有AJAX的情况下加载了过滤后的页面?
如果要使用新的WP\\U查询修改主查询,则可以使用此类请求参数
http://wordpress-site.com/page-slug/?query-parameter-1=1&query-parameter-2=2
对于JavaScript(JQuery),您只需使用
$(\'#target-div\').load(targetPage + \' #target-div-content\', function() {
// do script here
});
其中targetPage是请求参数。希望这有帮助
我正试图将WP Pluploader放入我帖子页面的元框中-根据Plupload Intergration in a meta-box? 和http://www.krishnakantsharma.com/2012/01/image-uploads-on-wordpress-admin-screens-using-jquery-and-new-plupload/我在第二个链接中的示例中实现了这一切。然而,我想把它全部放在一个类文件中。如果我把它全部打包成一个类,它就会停止工作。这都是因为:function