用于多个页面的自定义页面模板

时间:2016-07-06 作者:Ruben

我目前正在处理的网站的页面结构如下

About Us
|
|_People
| |
|  _ Person 1
|  _ Person 2
|  _ Person 3
|... etc ...
每个“个人”页面都是一个单独的页面,但它们都具有相同的结构,使用几个ACF字段来显示个人的简历、照片等。

我知道如何为一个特定的页面创建自定义页面模板,即page-slug。php,但我想对所有这些子页面使用一个页面模板。

要做到这一点,最简单的方法是什么?

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

您可以随时使用page_template 过滤器告诉WordPress对某个父级的所有子页使用特定的页面模板。这就像创建一个特殊的页面模板一样简单,让我们调用它page-wpse-person.php.

现在,只要在people 正在查看。为了举例说明,让我们假设people10

add_filter( \'page_template\', function ( $template ) use ( &$post )
{
    // Check if we have page which is a child of people, ID 10
    if ( 10 !== $post->post_parent )
        return $template;

    // This is a person page, child of people, try to locate our custom page
    $locate_template = locate_template( \'page-wpse-person.php\' );

    // Check if our template was found, if not, bail
    if ( !$locate_template )
        return $template;

    return $locate_template;
});

SO网友:cjbj

最简单的方法是创建custom post type \'person”,其中包括自定义字段。这个WordPress template hierarchy 然后将确保single-person.php 模板用于这些帖子。

相关推荐

如何在WooCommerce总价金额->ProductPages下增加保证金

我对ProductPage上的woocommerce价格金额有两个问题。第一个问题:我想在总价格金额下增加更多保证金,并按下“添加到卡”按钮我怎样才能做到这一点?(示例见下图)第二我只想显示总价。现在我得到了可变产品的最低价格,显示在产品标题下面,以及总价格金额。我只想显示总价。已经谢谢你了!