Ich möchte das Index-Template (frontend/index/index.tpl) ableiten, um darin verwendete Blöcke anders anzuordnen. D.h. ich möchte die Blöcke selbst nicht ändern, sondern lediglich Blöcke verschieben und den umgebenden HTML-Code etwas anpassen. Dazu möchte ich so wenig bestehenden Code wie möglich kopieren, sondern möglichst abgeleitet weiternutzen (Stichwort Update-Sicherheit). Das scheint nur nicht so zu klappen, wie ich mir das wünsche. Hier der Code: [code]{extends file=“parent:frontend/index/index.tpl”} {block name=‘frontend_index_navigation’}
{block name=‘frontend_index_logo’}{$smarty.block.parent}{/block}
{block name=‘frontend_index_checkout_actions’}{$smarty.block.parent}{/block}
{block name=‘frontend_index_search’}{$smarty.block.parent}{/block}
…
{block name=‘frontend_index_navigation_categories_top’}{$smarty.block.parent}{/block} {/block}[/code]Wie man sieht, möchte ich u.a. einfach den Block frontend_index_logo aus dem Eltern-Template wiedernutzen. Nur leider scheint sich $smarty.block.parent nicht auf den unmittelbar umschließenden Block zu beziehen, sondern auf den äußersten definierten Block frontend_index_navigation. Das führt dazu, dass nicht der jeweilige Blockinhalt ausgegeben wird, sondern immer wieder der Hauptblock. Die Frage ist nun: Wie kann ich Teile der Index-Struktur ändern, ohne die inneren Blöcke neu definieren und damit Code unnötig duplizieren zu müssen?