如何为自定义帖子和分类法制作 Wordpress 存档页面?

Posted

技术标签:

【中文标题】如何为自定义帖子和分类法制作 Wordpress 存档页面?【英文标题】:How do I make a Wordpress archive page for custom posts and taxonomies? 【发布时间】:2011-06-05 19:07:24 【问题描述】:

我正在尝试在 Wordpress 中设置一个包含自定义帖子类型和自定义分类的存档页面。

我创建了自定义帖子类型:“包”和自定义分类:“软件”。我的问题是,当我尝试查看 localhost:8888/software/aperture 时,我得到了 type 包的所有帖子,而不仅仅是选择了自定义分类孔径的帖子。我正在使用以下代码:

<?php
        $term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
        ?>
        <h1><?php echo $term->name;?> Presets</h1>
        <div class="intro2">
            <p>
            <?php echo $term->description;?>
            </p>
        </div>
        <?php query_posts('post_type=package'); ?>
         <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
            <!-- Product Start -->
            <div class="product">
                <div class="product_top"></div>
                <div class="product_content">
                        <div class="product_image">
                        <a href="<?php the_permalink()?>">
                            <?php echo get_the_post_thumbnail( $id, $size, $attr ); ?> 
                        </div>
                        <a href="<?php the_permalink()?>" class="title"><?php the_title()?></a>
                            <?php the_excerpt()?>                   
                        <div class="theprice">
                            <?php
                            $price = get_post_meta($post->ID, "price", true);
                            echo "$".$price;
                            ?>
                        </div>
                        <a href="<?php the_permalink()?>" class="button calltoaction"><span>See The Presets</span></a>
                        <div class="clearboth"></div>
                </div>
            </div>
         <?php endwhile; else: ?>
         <p>Sorry, no posts matched your criteria.</p>
         <?php endif; ?>    

如何让此存档页面仅显示自定义分类中当前选定项目的类型包的帖子?

顺便说一句,我使用插件“更多类型”和“更多分类法”来设置它。

更新:解决了:

通过在更多分类插件中将允许查询设置为 true 并将变量设置为预设来自行解决。然后我把查询改成:&lt;?php query_posts(array( 'post_type'=&gt;'package', 'presets' =&gt; $term-&gt;slug, 'posts_per_page' =&gt; -1 )); ?&gt;

【问题讨论】:

如果您想要存档页面的自定义模板,请在文件名前加上类型名称:posttype-archive.php 其实是archive-posttype.php -- codex.wordpress.org/… 【参考方案1】:

修改&lt;?php query_posts('post_type=package'); ?&gt;

<?php query_posts(array('post_type'=> 'package',array('taxonomy' => 'software'))); ?>

or

<?php query_posts(array('post_type'=> 'package','taxonomy' => 'software')); ?>

【讨论】:

以上是关于如何为自定义帖子和分类法制作 Wordpress 存档页面?的主要内容,如果未能解决你的问题,请参考以下文章

如何为也可以包含视频的 wordpress 帖子制作滑块?

如何为自定义帖子类型创建档案

如何为某些帖子类型禁用古腾堡/块编辑器?

如何在wordpress中检查帖子是不是属于分类类别的子类别

如何为我的自定义博客帖子创建档案?

如何为每个 wordpress 点击后创建单独的弹出表单