WordPress-如何找到与当前自定义帖子类型存档页面匹配的子弹页面?

时间:2018-10-31 23:08:30

标签: wordpress custom-post-type

我正在使用主题自定义程序创建自定义帖子类型页面。使用以下PHP代码和一些其他jquery,我可以设置默认的Custom Post Type存档页面。

$id = get_option('cptarchive-page'); 
$p = get_page($id); 
echo apply_filters('the_content', $p->post_content);

这基本上是抓取我在主题定制器中选择的页面,找到它的ID,然后jQuery将内容注入默认的存档页面。

但是我希望能够为每个不同的CPT设置不同的页面。

现在,我创建了一个名为Staff的自定义帖子类型,以及一个名为Archive Staff的新页面。

是否可以过滤页面并查找标题为Archive [cpt name]的页面(在这种情况下为 Archive Staff ),并显示该页面?

如果不存在,请显示我在主题客户中选择的默认值。

这应该适用于所有注册的自定义帖子类型。每个CPT存档都应找到与其名称匹配的页面并显示该页面。

摘要

(我意识到可能不清楚,所以这里是另一种解释:)

我目前在主题定制器中有一个选项,可以选择一个页面用作使用PHP和jQuery的默认“自定义帖子类型”存档页面。现在,我希望能够为每个注册的CPT存档文件自动 IF 自动使用不同的页面。

标题为“ Archive [CPT name]”的页面已发布。

示例

注册的CPT :员工,从业者

创建的页面:存档从业者

因此流程将是:

  • 查找所有已注册的自定义帖子类型,但不包括内置帖子类型(员工,从业人员)
    • 针对每个注册的CPT
      • 如果名称为“存档[CPT名称]”的页面存在:
        • 获取the_content
      • 如果不存在:
        • 使用所选的默认自定义存档页面

因此,对于Staff存档,将使用默认的存档页面,因为没有名为Archive Staff的页面。

但是对于Practitioners档案,默认档案页面将是我创建的Archive Practitioners页面。

0 个答案:

没有答案