This tries to implement something similar like here: http://www.cheetahtemplate.org/docs/users_guide_html_multipage/inheritanceEtc.extends.html so you have generic template with application logic, organization specific layout and then page specific code. wembcode.py-------------------------------- from Cheetah.Template import Template class wembcode(Template) def __init__(self): Template.__init__(self) self.fish = 'pike' ------------------------------------------- wemblate.tmpl------------------------------ #from wembcode import wembcode #extends wembcode #implements respond foor $fish bar ------------------------------------------- orgcode.py-------------------------------- from wemblate import wemblate class orgcode(wemblate): def __init__(self): self.fish = 'shark' pass ------------------------------------------- orglate.tmpl ------------------------------ #from orgcode import orgcode #extends orgcode ------------------------------------------- pagecode.py ------------------------------- from org import orgcode class pagecode(orgcode): def __init__(self): orgcode.__init__(self) ------------------------------------------- page.tmpl---------------------------------- #extends pagecode ------------------------------------------- % ./page.py Traceback (most recent call last): File "./page.py", line 130, in ? CmdLineIface(templateObj=page()).run() File "/usr/lib64/python2.3/site-packages/Cheetah/TemplateCmdLineIface.py", line 45, in run print self._template File "/usr/lib64/python2.3/site-packages/Cheetah/Template.py", line 990, in __str__ def __str__(self): return getattr(self, mainMethName)() File "/srv/www/test/wemblate.py", line 88, in respond _v = VFFSL(SL,"fish",True) # '$fish' on line 5, col 32 NameMapper.NotFound: cannot find 'fish' $