metal:define-slot
Этот атрибут должен быть объявлен внутри тега, объявляющего макрос (metal:define-macro
).
Слоты могут заменяться вызывающим шаблоном на динамически генерируемый XML/XHTML.
Cлоты помогают разнообразить страницы. Если макрос представить как целую страницу, то слоты можно предствить как секции, варьирующиеся в зависимости от, например, URL. К примеру, на той же главной странице сайта слот выводит свежие новости или перечень действий, доступных пользователю после его авторизации.
<span metal:define-slot="news_place">
<table>
<tr tal:repeat="item php:latestNews()">
<td tal:content="item/value">news description</td>
</tr>
</table>
</span>
В этом примере мы определяем секцию под названием 'news_place', содержимое которой может быть подменено вызывающим шаблоном. Ниже мы рассмотрим, как использовать слоты, ссылаясь на этот пример.