On 07.03.2010, at 15:44, Rowan @ Jetboy wrote:

> A very simple example. If I have a macro with a slot:
>  
> <div metal:define-macro="page">
>                 <div metal:define-slot="slot"></div>
> </div>
>  
> and another macro:
>  
> <div metal:define-macro="box">
>                 <div tal:content="heading"></div>
> </div>
>  
> I can fill 'slot' with multiple instances of 'box' like:
>  
> <div metal:use-macro="page">
>                 <div metal:fill-slot="slot">
>                                 <div metal:use-macro="box"></div>    
>                                 <div metal:use-macro="box"></div>    
>                 </div>
> </div>
>  
> As I'd expect, just using $template->heading = 'Heading name', echos 'Heading 
> name' to both boxes. What do I need to change so I can insert unique heading 
> content into each 'box' instance?

You can locally redefine variables using tal:define, like this:

                <div metal:fill-slot="slot">
                                <div tal:define="heading string:another value" 
metal:use-macro="box"/>
                                <div metal:use-macro="box"/>
                </div>

-- 
regards, Kornel




_______________________________________________
PHPTAL mailing list
PHPTAL@lists.motion-twin.com
http://lists.motion-twin.com/mailman/listinfo/phptal

Reply via email to