在WordPress中,页面是分层级的。那么如何判断页面层级呢?
WordPress并没有提供现成的函数,不过,好消息是也容易判断。
global $post;
if (is_page() && $post->post_parent) {
echo '这是一个子页面';
} else {
echo '这不是子页面';
}
如果,经常要用,就封装一个函数:
function is_subpage()
{
global $post;
if (is_page() && $post->post_parent) {
return $post->post_parent;
} else {
return false;
}
}
要测试页面的父页面是否是特定页面,例如“About”,并给其设置一个不一样的Banner。
if (is_page('about') || '2' == $post->post_parent) {
$bannerimg = 'about.jpg';
} elseif (is_page('learning') || '56' == $post->post_parent) {
$bannerimg = 'teaching.jpg';
} elseif (is_page('admissions') || '15' == $post->post_parent) {
$bannerimg = 'admissions.jpg';
} else {
$bannerimg = 'home.jpg';
}
下面是一个函数,更轻松地执行上述测试。如果我们正在查看有问题的页面(即“关于”)或其子页面之一(即 ID 为“2”的父页面),此函数将返回 true。
function is_tree($pid)
{
global $post;
if (is_page($pid))
return true;
$anc = get_post_ancestors($post->ID);
foreach ($anc as $ancestor) {
if (is_page() && $ancestor == $pid) {
return true;
}
}
return false;
}
-
WordPress函数:国际化 _n 翻译字符串,可以区分单数复数WordPress函数:国际化 _n 翻译字符串,可以区分单数复数
-
WordPress函数:国际化 _nx 翻译字符串,_n + _xWordPress函数:国际化 _nx 翻译字符串,_n + _x
-
WordPress函数:_n_loop 在 pot 文件中注册字符串WordPress函数:_n_loop 在 pot 文件中注册字符串
-
WordPress函数:国际化 _nx_noop 在 pot 中注册字符串WordPress函数:国际化 _nx_noop 在 pot 中注册字符串
-
WordPress 6.5移除区块样板菜单项的方法WordPress 6.5新增的区块样板菜单项,可将不同区块组合成一个新的区块模板,方便重复使用。
-
WordPress做多语言企业网站近期常用小伙伴问追格小编,有没有计划做双语WordPress企业官网主题。
暂无评论,抢个沙发...