我应该使用哪个模板页面?

时间:2018-01-30 作者:Burgi

我已经创建了几个自定义帖子类型(例如:FAQ、产品和案例研究),并注册了一个全局自定义分类法,用于所有CPT。在我的例子中,这种分类法被称为受众。这些被列为消费者、建筑师和商人。

在本例中,我将使用商家分类法中的常见问题解答。

我正在努力找出如何过滤常见问题以显示给特定受众。我的archive-faqs.php 列出所有常见问题解答,无论受众类型如何。

我希望能够显示标记为merchant的所有常见问题解答。我的选择是什么?

我是否创建自定义page.php 模板并为其创建自定义循环archive-faqs.php 获取查询字符串

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

您始终可以进行自定义wp\\U查询并将其放入自定义模板中。php。

$the_query = new WP_Query( array(
    \'post_type\' => \'faqs\',
    \'tax_query\' => array(
        array (
            \'taxonomy\' => \'audiences\',
            \'field\' => \'slug\',
            \'terms\' => \'merchants\',
        )
    ),
) );

while ( $the_query->have_posts() ) :
    $the_query->the_post();
    // Show Posts ...
       the_title();
endwhile;

/* Restore original Post Data  */
wp_reset_postdata();

SO网友:Tom J Nowell

我正在努力找出如何过滤常见问题以显示给特定受众。我的存档常见问题解答。php列出了所有常见问题解答,无论受众类型如何。

因此,您有一些常见问题解答,这些常见问题解答适用于一位观众,如果我们按观众对这些常见问题进行分组,会怎么样?突然我们有了taxonomy 常见问题,FAQ Audience

现在你有了archive-faqs.php 用于列出常见问题,但您还有taxonomy-audiences.php 针对特定受众的常见问题。记住,内容决定模板,而不是相反。archive-faq.php 不会使页面加载FAQ,而是加载和归档FAQ,从而加载WParchive-faq.php. WP has already fetched all the posts by the time it decides which template to load.

考虑到这一点,您已经有了一个用于显示观众常见问题的存档,可能位于example.com/audiences/audienceslug

模板层次结构建议测试以下模板:

分类法受众受众。php分类法受众。php分类法。php存档。php索引。php

See here for details on the taxonomy template

一个来自智者的词

很容易创建页面模板和其他模板,然后使用WP_Queryget_posts. 如果你是一个特别糟糕的人,你可以query_posts.

这是错误的,如果要更改过滤器或调整主查询从数据库中获取的内容,请使用pre_get_posts 筛选以修改查询对象。通过这种方式,您可以在参数进入数据库之前添加并删除它们。

结束

相关推荐

Use menus with anchors

我有一个CPT归档页面,我想创建一个导航菜单,该菜单将跳转到表单中的锚定<a name=\"post-slug\" http=\"{the permalink goes here}>The CPT Title</a>我已经能够在模板文件中创建锚定,所以这不是问题对于页面顶部的链接本身,我可以手动创建它们,也可以使用WordPress菜单系统中的自定义链接。。。。但是有很多,所以我宁愿尝试在WordPress菜单系统中创建一个常规菜单。问题是,我需要以某种方式调整它的输出,以更改常规