有没有办法添加/更改页面子项的允许模板?当我为特定页面创建子项时,我想设置要使用的模板。我使用Processwire CMS时有这个选项:
选择使用此模板允许页面子项的模板。仅当您特别希望使用此模板限制页面放置时才使用此选项。如果未选择任何一个,则允许在用户的访问限制内。示例用法可以是“新闻列表”模板,只允许孩子使用“新闻项目”或“新闻发布”模板。
答案 0 :(得分:1)
之前我遇到过这个问题,我使用自定义函数来确定页面的级别,然后使用以下内容包含一个文件:
get_post_ancestors();
该功能(添加到functions.php)
function hierarchy_level($post){
if(count(get_post_ancestors($post)) === 0){
return 'parent';
}elseif(count(get_post_ancestors($post)) === 1){
return 'child';
}
elseif(count(get_post_ancestors($post)) === 2){
return 'grandchild';
}else{
return false;
}
}
在页面模板中使用:
$page_level = hierarchy_level($post);
switch ($page_level){
case 'parent':
include('template-parts/parent.php');
break;
case 'child':
include('template-parts/child.php');
break;
case 'grandchild':
include('template-parts/grandchild.php');
break;
}