<?php
$id = $post->ID;
if( ! has_post_thumbnail( $id ) ) {
// the current page has no feature image
// so we\'ll see if a) it has a parent and b) the parent has a featured image
$ancestors = get_ancestors( $post->ID, \'page\' );
$parent_id = $ancestors[0];
if( has_post_thumbnail( $parent_id ) ) {
// we\'ll use the parent\'s featured image
$id = $parent_id;
}
}
$thumb = wp_get_attachment_image_src( get_post_thumbnail_id($id), \'full\' );
?>
<div class=\'guideHeader\' style=\'background-image: url(<?php echo $thumb[\'0\']; ?>);\'>
结果是,如果当前页面具有特征图像集,则将使用该图像集。如果没有,但它确实有父页面,那么我们将检查该父页面是否有特征图像。如果有,我们将使用该页面的
ID
获取特色图像。如果父页面没有特色图像,那么我们只使用当前页面的
ID
让芯片落在可能的地方。
这是快速而肮脏的,不会进行真正的错误处理。(抄本页面一瞥get_post_thumbnail_id()
和wp_get_attachment_image_src()
表示它们都将返回false
如果没有特色图像,这意味着在最坏的情况下,您的页面将没有背景图像。)
has_post_thumbnail()
get_post_thumbnail_id()
wp_get_attachment_image_src()