... what if I want to make some global changes to my site? What if I want to add a heading (on every page) right after my <body> tag, and I want it to be the title of the zpt (not 'standard_template', but that using it). Doing the following doesn't seem to work when put in 'standard_template' as 'here' is not what I want when being accessed within a macro.
<body> <h1 tal:content="here/title">title inserted here</h1>
You could use tal:content="template/title" if you want to get the title of the template. here/title will give you the title of the folder containing the template.
Duncan, thanks *very* much. I thought things must be a little simpler than they seemed. This works nicely. So, with that little issue overcome, I guess the only thing I'm left wondering is why my content objects need to contain any explicit use of zpt *within their source* (as opposed to as a property on the object). Using only standard zope objects, the only ways I can see of overcoming this require nasty url mangling that locks me into a specific site system (due to embedded links). By this I mean, if I want to have a zpt called as a method of my object when it's rendered, I could do one of: /render?id=content_object /content_object/view where 'render' is some sort of script that does something like standard_template.__of__(content_object) and where view is an alias to 'standard_template'. How do other people deal with this, or do you just live with having zpt in your content source? cheers, tim