Hi
I would do that slightly different. Instead of creating a Page called "Footer", create a new class named HomePage which you then assign to the Home-Page (as described in this tutorial: http://doc.silverstripe.com/doku.php?id=tutorial:1-building-a-basic-site#using_a_different_template_for_the_home_page).
The HomePage class can then be used to store "global" fields like the footer, since there's mostly just one single HomePage. So your HomePage class could look like this:
?php
class HomePage extends Page
{
public static $db = array(
'Footer' => 'HTMLText'
);
public function getCMSFields()
{
$fields = parent::getCMSFields();
$fields->addFieldToTab(
'Root.Content.Main',
new HtmlEditorField('Footer')
);
return $fields;
}
}
class HomePage_Controller extends MainPage_Controller {
}
That will take care of the Footer content. You can edit it, by editing the HomePage...
Now you just need a method to access your Footer-Content on any page. Here's how (make sure this in your Page.php file):
class Page {
... contents of Page ...
}
class Page_Controller extends ContentController
{
// this is the important part
public function Footer(){
$obj = SiteTree::get_one('HomePage');
return $obj->Footer;
}
}
Now you can simply place $Footer anywhere in your template and it should output the footer content.