我试图掌握自定义帖子类型的诀窍,并试图让它们在页面模板中循环浏览帖子类型。我已经在使用MultiEdit插件来显示模板中的某些内容区域。总的来说,以下是我的模板页面的外观:
<?php
/*
Template Name: Home Template
MultiEdit:Icons,NameTitle,CategoriesTitle
*/
?>
<?php get_header(); ?>
<?php query_posts( \'post_type=homecategories\'); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="main">
<section>
<div class="icons">
<?php multieditDisplay(\'Icons\'); ?>
</div><!--end icons-->
<div class="slider">
<?php the_content(); ?>
</div><!--end slider-->
<div class="title">
<?php multieditDisplay(\'NameTitle\'); ?>
</div>
<div class="categories">
<?php multieditDisplay(\'CategoriesTitle\'); ?>
<!--this is where I want the custom posts to loop through-->
<div class="items">
<!--image of the custom post type-->
<img src="" />
<span><!--title of custom post type--></span>
</div>
<!--end of the custom posts loop-->
</div><!--end categoires-->
<div class="news">
</div><!--end news-->
<?php edit_post_link(\'Edit this entry.\', \'<p>\', \'</p>\');
?>
</section>
</div><!--end main-->
<?php //comments_template(); ?>
<?php endwhile; endif; ?>
<?php //get_sidebar(); ?>
<?php get_footer(); ?>
如果我保持这样,唯一显示的是custome post类型中的条目,而不是其他内容。我要做的是让它在模板中只显示此部分中的自定义帖子类型:
<div class="items">
<!--image of the custom post type-->
<img src="" />
<span><!--title of custom post type--></span>
</div>
<!--end of the custom posts loop-->
正如我所提到的,我仍然掌握着使用和实现自定义帖子类型的诀窍,我不确定这是否是正确的方法。
谢谢
最合适的回答,由SO网友:montrealist 整理而成
循环浏览帖子首先,你需要有两个separate 循环-一个用于当前显示的内容,另一个用于自定义帖子类型。现在,您希望自定义帖子出现的块位于第一个循环中,这并不好。我建议你仔细阅读The Loop, 并特别检查以下示例:multiple loops.
顺便说一下,一个can 有嵌套循环,但这很可能不是您的情况。
模板
同样,从你的评论来看,不确定这是否是你所需要的,但对于模板,你可以随时利用WordPress
template hierarchy. 这样,您就可以为每个自定义帖子类型创建单独的模板文件,然后完全控制每个自定义帖子的显示方式。
要列出帖子,您需要查看Custom Post Types display 部分