大佬教程收集整理的这篇文章主要介绍了将 URL 参数添加到 Wordpress 中的 AJAX 过滤器,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
I have an AJAX post filter that when selected outputs a List of posts from a category,this filter will sit in the sIDebar of all posts so users can use it to browse different categorIEs.
当有人访问列表中的帖子时,我想保持选择一个类别。经过一番研究,我发现一种可能的方法是 URL 参数。
我认为这需要两部分:
当您选择一个类别时,列出的链接将变为:example.com/post_slug1?category=home
当您访问该链接时,该类别将保持选择为“主页”,并显示“主页”帖子列表,直到选择其他类别为止。
这是我目前的代码:
<form action="<?PHP echo site_url() ?>/wp-admin/admin-AJAX.PHP" method="POST" ID="filter">
<?PHP
if( $terms = get_terms( array( 'taxonomy' => 'category','orderby' => 'name' ) ) ) :
echo '<select name="categoryfilter" ID="selectcat"><option value="">Select category...</option>';
foreach ( $terms as $term ) :
echo '<option value="' . $term->term_ID . '">' . $term->name . '</option>'; // ID of the category as the value of an option
endforeach;
echo '</select>';
endif;
?>
<input type="hIDden" name="action" value="myfilter">
Js
jquery(function($){
$('#selectcat').change(function(){
var filter = $('#filter');
$.AJAX({
url:filter.attr('action'),data:filter.serialize(),// form data
type:filter.attr('method'),// POST
beforeSend:function(xhr){
},success:function(data){
$('#response').HTML(data); // insert data
}
});
return false;
});
});
Functions.PHP
add_action('wp_AJAX_myfilter','misha_filter_function');
add_action('wp_AJAX_nopriv_myfilter','misha_filter_function');
function misha_filter_function(){
$args = array(
'orderby' => 'date',// we will sort posts by date
'order' => $_POST['date'] // ASC or DESC
);
// for taxonomIEs / categorIEs
if( isset( $_POST['categoryfilter'] ) )
$args['tax_query'] = array(
array(
'taxonomy' => 'category','fIEld' => 'ID','terms' => $_POST['categoryfilter']
)
);
/* // if post thumbnail is set
if( isset( $_POST['featured_image'] ) && $_POST['featured_image'] == 'on' )
$args['Meta_query'][] = array(
'key' => '_thumbnail_ID','compare' => 'EXISTS'
); */
$query = new WP_query( $args );
if( $query->have_posts() ) :
while( $query->have_posts() ): $query->the_post();
echo '<a href="' . get_permalink() . '">' . $query->post->post_Title . '</a><br>';
enDWhile;
wp_reset_postdata();
else :
echo 'No posts found';
endif;
dIE();
}
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的将 URL 参数添加到 Wordpress 中的 AJAX 过滤器全部内容,希望文章能够帮你解决将 URL 参数添加到 Wordpress 中的 AJAX 过滤器所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。