您可以重写层次结构并通过page_template
滤器
最快的方法是通过ID标识父页:
function wpd_page_template_filter( $template ){
$page = get_queried_object();
if( 42 == $page->post_parent ){ // en page has ID of 42
$template = locate_template( \'page-en.php\' );
}
return $template;
}
add_filter( \'page_template\', \'wpd_page_template_filter\' );
或者你也可以通过一个额外的步骤通过slug来识别它:
function wpd_page_template_filter( $template ){
$page = get_queried_object();
$parent_slug = get_post_field( \'post_name\', $page->post_parent );
if( \'en\' == $parent_slug ){
$template = locate_template( \'page-en.php\' );
}
return $template;
}
add_filter( \'page_template\', \'wpd_page_template_filter\' );
如果您的页面是孙子或更低级别的页面,您可以使用
get_ancestors
作用