查询帖子以显示类别为“自定义字段值”的所有帖子

时间:2017-12-28 作者:Sarah Steinberg

我想知道如何使用自定义字段查询自定义帖子类型的帖子。

目标:在我的“艺术家”单页上,我只想显示该艺术家的新闻/专辑发布列表。这些帖子也会显示在主页上。

概念:为帖子上的每个艺术家使用一个类别;在每个艺术家页面上使用自定义字段“news\\u category\\u slug”链接他们。然后,我想查询帖子并显示类别中与自定义值“news\\u category\\u slug”匹配的所有帖子。

也许我走错了方向;我没有太多的PHP知识,所以我很难确定这是一种糟糕的方法,还是我不知道如何在查询中嵌套变量!帮助

2 个回复
SO网友:Sharad Yadav

如果要将艺术家创建为类别,则其单页模板将为类别。php,在类别中。php添加以下代码:-

$category\\u id=get\\u cat\\u id(single\\u cat\\u title(“,false))$cat\\u name=get\\u cat\\u name($category\\u id)$新建=query\\u posts(\'post\\u type=news\\u album&;cat=\'.$category\\u id.&;post\\u status=publish&;orderby=id&;order=DESC&;posts\\u per\\u page=-1\');if(have\\u posts()):while(have\\u posts()):the\\u post();echo获取\\u标题($post->ID);echo获取\\u内容($post->ID);

结束时;其他:echo“此类别未添加帖子!”;endif;wp\\u reset\\u query();

SO网友:Lenin Zapata

如果您使用CPT,则应如下所示:

<?php 
            query_posts(array( 
                \'post_type\' => \'artists\',
                \'showposts\' => 10,
                \'tax_query\' => array(
                           array (
                             \'taxonomy\' => \'category_custom_post_type\', // <= Name of the taxonomy created type category for the CPT
                             \'field\' => \'slug\',
                             \'terms\' => \'news_category_slug\', // <= Slug taxonomy
                          )
            ),
            ) );  
        ?>
        <?php while (have_posts()) : the_post(); ?>
                <h2><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h2>
                <p><?php echo get_the_excerpt(); ?></p>
        <?php endwhile;  
    // reset the orignal query we should use this to reset wp_query  
    wp_reset_query(); ?>

结束

相关推荐

如何加快wp_Query的速度,花了更多的5秒才能与10万条帖子竞争

我使用了一个非常简单的wp\\u查询,在站点上检索了10篇帖子,超过10万篇。此查询在wp多站点上运行,对同一网络(同一db服务器)中的小站点执行相同的查询需要很少的毫秒(0.032888 | 0.021731 | 0.020796 | 0.02127)主要问题是什么时候尝试在大型网站上运行它(增加10万个帖子)。wp\\U查询转储为:print_r($args); // output Array ( [post_type] => post