3066 Posts in 866 Topics by 648 members
|
Page:
1
|
Go to End | |
| Author | Topic: | 1174 Views |
-
Banner Image defaults to parent

20 March 2009 at 5:37pm Last edited: 20 March 2009 5:41pm
In a site I'm building I want different banner images for each section of the site, and so want a page to default it's parents banner if one is not set. I have set up the following code, but I don't see anything on the page
the code is based on this archived post
In Page.php
class Page extends SiteTree {
static $has_one = array(
'BannerImage' => 'Image'
);
.....class Page_Controller extends ContentController {
.....
function getBannerImage() {if(empty($BannerImage->ID)){
$BannerImage = $this->getParentBannerImage($this);
}
return $BannerImage;
}private function getParentBannerImage($CurrentPage){
$Parent = $CurrentPage->Parent;if(is_object($Parent)){
if(!empty($BannerImage->ID)){
return $BannerImage;
// We found the current header! Let's return it!
} else {
return $this->getParentBannerImage($Parent);
// We didn't find a header,so we have to call ourselves again
}} else {
return false;
}
}
....In Page.ss i'll just do something like this:
<div id="banner" style="background:url(<% control getBannerImage %>$URL<% end_control %>)"></div>
So, it's probably something completely obvious...just not to me at the mo!
| 1174 Views | ||
|
Page:
1
|
Go to Top |
