metal:define-macro

Этот атрибут объявляет макрос. По своей сути макросы это обычные шаблоны, которые могут быть многократно вставлены в другие шаблоны.

<div metal:define-macro="main_menu">
  <ul>
    <li><a href="/">Главная</a></li>
    <li><a href="/products">Продукция</a></li>
    <li><a href="/contact">Контакты</a></li>
  </ul>

  <div>
    Последнее обновление:
    <span tal:content="mdate">дата последнего обновления</span>
  </div>
</div>

Макрос наследует доступные переменные из вызывающего шаблона. В нашем примере значение переменной 'mdate' нужно объявить в шаблоне, в котором используют этот макрос.