我希望我的index.php在顶部有一个水平的类别名称列表,当我点击任何类别名称时,在特定div容器的索引页面中显示最新的10个帖子而不刷新 . 这在Wordpress中可行吗?

谢谢 .

使用我的代码更新:

对于类别菜单:

<?php $categories = get_categories(); ?>

<ul id="category-menu">
<?php foreach ( $categories as $cat ) { ?>
<li id="cat-<?php echo $cat->term_id; ?>"><a class="<?php echo $cat->slug; ?> ajax" onclick="cat_ajax_get('<?php echo $cat->term_id; ?>');" href="#"><?php echo $cat->name; ?></a></li>
<?php } ?>

html div占位符,其中帖子将通过ajax加载:

<div id="main-container">
<div id="loading-animation" style="display: none;"><img src="<?php bloginfo('url'); ?>/images/loading.gif"></div>
<div id="category-listing"></div>

jQuery函数:

<script>
function cat_ajax_get(catID) {
 jQuery("a.ajax").removeClass("current");
 jQuery("a.ajax").addClass("current"); //adds class current to the category menu item being displayed so you can style it with css
 jQuery("#loading-animation").show();
var ajaxurl = '<?php echo admin_url( 'admin-ajax.php' ); ?>';
 jQuery.ajax({
     type: 'POST',
     url: ajaxurl,
     data: {"action": "load-filter", cat: catID },
     success: function(response) {
         jQuery("#category-listing").html(response);
         jQuery("#loading-animation").hide();
         return false;
  }
  });
  }
  </script>

PHP函数:

add_action( 'wp_ajax_nopriv_load-filter', 'prefix_load_cat_posts' );
add_action( 'wp_ajax_load-filter', 'prefix_load_cat_posts' );
function prefix_load_cat_posts () {
$cat_id = $_POST[ 'cat' ];
     $args = array (
    'cat' => $cat_id,
    'posts_per_page' => 10,
    'order' => 'DESC'

    );

$posts = get_posts( $args );

ob_start ();

foreach ( $posts as $post ) {
setup_postdata( $post ); ?>

<div>
    <h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>/h1>
</div>

<?php } wp_reset_postdata();

$response = ob_get_contents();
ob_end_clean();

echo $response;
die(1);
}

但是当我点击类别时它不显示但是当我选择所有并查看源代码时,结果

没有数据加载..

任何帮助?