我试图只显示父页面上的侧边栏小部件,并且在任何子页面和孙子页面上,但是使用我拥有的代码,它对于孙子页面不起作用。
<?php if (is_page(8) || $post->post_parent=="8") { ?>
//Do something
<?php } else { ?>
//Do something else
<?php }?>
任何建议都将不胜感激,谢谢。
答案 0 :(得分:1)
首先得到父母的祖先:
$ancestors = get_post_ancestors($post);
然后询问当前postID是否在该数组中:
if( in_array(8, $ancestors) || is_page(8) || (8 == $post->post_parent) ) :
//do your thing
endif;