用户单击锚点后加载wordpress帖子

时间:2013-07-14 09:37:06

标签: wordpress jquery

这是我的标签菜单,用户可以在其中选择标签

<div id="slider-menu" class="row">
    <div class="span12">
        <ul class="nav nav-tabs" id="myTab">
            <li class="active"><a href="#home">Latest events</a><div class="triangle"></div></li>
            <li><a href="#profile">Our champions</a></li>
            <li><a href="#messages">We have puppies!</a></li>
        </ul>
    </div>
</div>

还有我的标签,在页面加载时加载内容

    <div class="tab-content">
        <div class="tab-pane active" id="home">
            <img src="<?php bloginfo('template_url'); ?>/img/slider.png" />
            <div class="span12">
                <?php 
                 query_posts('cat=7');
                    if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
                    <h3><a href="<?php the_permalink() ?>" rel="bookmark" title=""><?php the_title(); ?></a></h3>
                    <?php the_content(); ?>
                    <?php endwhile; else: ?>
                    <p>Sorry, no posts matched your criteria.</p>
                    <?php endif; ?>
            </div>
        </div>
        <div class="tab-pane" id="profile">
            <img src="<?php bloginfo('template_url'); ?>/img/slider.png" />
            <div class="span12">
                <?php 
                 query_posts('cat=8');
                    if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
                    <h3><a href="<?php the_permalink() ?>" rel="bookmark" title=""><?php the_title(); ?></a></h3>
                    <?php the_content(); ?>
                    <?php endwhile; else: ?>
                    <p>Sorry, no posts matched your criteria.</p>
                    <?php endif; ?>
            </div>
        </div>
        <div class="tab-pane" id="messages">
            <img src="<?php bloginfo('template_url'); ?>/img/slider.png" />
            <div class="span12">
                <?php 
                 query_posts('cat=9');
                    if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
                    <h3><a href="<?php the_permalink() ?>" rel="bookmark" title=""><?php the_title(); ?></a></h3>
                    <?php the_content(); ?>
                    <?php endwhile; else: ?>
                    <p>Sorry, no posts matched your criteria.</p>
                    <?php endif; ?>
            </div>
        </div>
     </div>

当会有很多帖子时,页面加载时间太长,所以我的基本想法是在页面加载时将所有帖子加载到第一个标签页,并在用户选择时将帖子加载到另一个标签页。 / p>

当用户点击特定标签时,我很难将wp posts loop和ajax结合起来加载帖子。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

$.ajaxSetup({cache:false});
$('#myTab li').click(function(){
    var cat_id = $(this).children().attr('rel');
    $.get('location.href' + cat_id, function(data) {
    $('#' + cat_id).html(data);
return false;
});

所以我将类别id输出到anchor rel属性,然后我添加click事件处理程序,我在其中调用.get函数。毕竟,我输出数据。