WordPress,自定义帖子类型和帖子查询帮助!

时间:2011-06-21 作者:The Fragile Machine

我有一个主页,我试图查询自定义帖子类型以及默认帖子的所有内容,

现在我有两个循环运行,一切看起来都很好,除了我希望这两种不同的类型混合,如果这有意义的话。

我正在运行一个jquery函数,该函数可以显示和隐藏来自自定义帖子类型或默认“博客”帖子类型的帖子。但是,由于我必须循环,默认帖子总是显示在顶部,自定义帖子类型的帖子显示在底部,这里是我的live页面的链接

http://themes.thefragilemachine.com/themachine_v4/

您可以看到,我的自定义帖子类型显示为“w”图标,它们显示在末尾附近,但我希望它们混合在一起,。我知道这是一种类型,只是想找出最好的方式来解释我想要实现的目标。任何帮助都将是惊人的!这是我的密码

            <?php if (have_posts()) : ?>
            <?php query_posts(\'posts_per_page=6\');?>
            <?php while (have_posts()) : the_post(); ?>

            <div class="postitem mall floatleft myblog storm_fader">
            <div class="postitem-img lordfade">
            <a href="<?php the_permalink() ?>"><?php the_post_thumbnail(\'type2\'); ?></a>
            </div>
            <div class="postitem-contentwrap">
            <div class="postitem-txt">
            <h6><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h6>
            <?php the_excerpt(\'\'); ?>
            </div>
            <div class="postitem-info">
            <ul>
            <li><span class="post-label-blog"></span></li>
            <li class="spec"><a href="<?php the_permalink() ?>">
            <img src="/themachine_v4/wp-content/themes/themachine_v5_2/lib/imgs/img_gopost.jpg">
            </a></li>
            </ul>
            <div class="clear"></div>
            </div>
            </div>
            <div class="postitem-shadow"></div>
            </div>

            <?php endwhile; ?>
            <?php else : ?>
            <h2 class="center" style="color:#FFF;">ERROR</h2>
            <?php endif; ?>


            <?php rewind_posts(); ?>


            <?php if (have_posts()) : ?>
            <?php query_posts(\'post_type=work&posts_per_page=6\');?>
            <?php while (have_posts()) : the_post(); ?>

            <div class="postitem mall floatleft mywork storm_fader">
            <div class="postitem-img lordfade">
            <a href="<?php the_permalink() ?>"><?php the_post_thumbnail(\'type2\'); ?></a>
            </div>
            <div class="postitem-contentwrap">
            <div class="postitem-txt">
            <h6><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h6>
            <?php the_excerpt(\'\'); ?>
            </div>
            <div class="postitem-info">
            <ul>
            <li><span class="post-label-work"></span></li>
            <li class="spec"><a href="<?php the_permalink() ?>">
            <img src="/themachine_v4/wp-content/themes/themachine_v5_2/lib/imgs/img_gopost.jpg">
            </a></li>
            </ul>
            <div class="clear"></div>
            </div>
            </div>
            <div class="postitem-shadow"></div>
            </div>

            <?php endwhile; ?>
            <?php else : ?>
            <h2 class="center" style="color:#FFF;">ERROR</h2>
            <?php endif; ?>

1 个回复
最合适的回答,由SO网友:Bainternet 整理而成

你在那里做了很多错事,例如,你应该只使用query_posts 在模板文件和页面的主查询中,任何其他操作都应该使用get_postsWP_Query.

因此,要使您的帖子类型相互混合,您只需在查询时使用数组设置帖子类型:

<?php query_posts(array(\'posts_per_page\' => 6, \'post_type\' => array(\'work\',\'post\')));
if (have_posts()) : 
    while (have_posts()) : the_post(); ?>
        <div class="postitem mall floatleft myblog storm_fader">
        <div class="postitem-img lordfade">
        <a href="<?php the_permalink() ?>"><?php the_post_thumbnail(\'type2\'); ?></a>
        </div>
        <div class="postitem-contentwrap">
        <div class="postitem-txt">
        <h6><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h6>
        <?php the_excerpt(\'\'); ?>
        </div>
        <div class="postitem-info">
        <ul>
        <li><span class="<?php 
        if ($post->post_type =="post"){
            echo \'post-label-blog\';
        }else{
            echo \'post-label-work\';
        }?>"></span></li>
        <li class="spec"><a href="<?php the_permalink() ?>">
        <img src="/themachine_v4/wp-content/themes/themachine_v5_2/lib/imgs/img_gopost.jpg">
        </a></li>
        </ul>
        <div class="clear"></div>
        </div>
        </div>
        <div class="postitem-shadow"></div>
        </div>
    <?php endwhile; 
else : ?>
    <h2 class="center" style="color:#FFF;">ERROR</h2>
<?php endif; ?>

结束

相关推荐

用于与Picasa交互的jQuery图库插件

我正在寻找一种特定类型的库插件实现。首先,它需要能够从Picasa拉出。其次,我希望它基本上是一个静态灯箱。。。我的意思是:使用上一个/下一个按钮显示的单个图像能够显示图像标题/描述Image <x> of <y>最好使用jQuery,此时,我宁愿隐藏所有库缩略图,并将焦点放在主图像上。如果缩略图可以通过配置选项轻松隐藏和显示,那就可以了。