2011-11-11 17 views
5

Udało mi się dojść do punktu, w którym rozumiem, jak przenosić bloki z kolumny na kolumnę w moich układach Magento: poprzez określenie "lewego" lub "prawego" atrybutu w tagu <reference>. Jednak nie rozumiem, jak zmienić zamówienie, w którym pojawiają się bloki. Zauważyłem, że atrybuty "przed" i "po" tagu <block> mają z tym coś wspólnego, ale nie jestem pewien, jak działają. Jeśli chcę przenieść blok z góry jego obszaru do dowolnego miejsca na naszej stronie, jakie jest prawidłowe użycie i składnia tych atrybutów?Przed i po w Local.xml Magento?

Na przykład, mam strony kategorii i mam te bloki w nim:

  • view.phtml
    • list.phtml
      • toolbar.phtml

... i tak dalej.

Chcę umieścić mój blok w dowolnym miejscu w obrębie tych bloków lub na górze tych bloków lub sprawić, aby wszystkie te bloki pojawiły się w innym bloku. Jak mogę użyć "przed" i "po", aby to osiągnąć, używając mojego pliku local.xml?

Uwaga: Mogę to zrobić ręcznie, dziedzicząc odpowiednie pliki .xml, ale to nie jest dobre rozwiązanie problemu jako całości.

Odpowiedz

6

before: Używany do pozycjonowania bloku przed blokiem o nazwie określonej w wartości. Jeśli użyta jest wartość "-", blok jest pozycjonowany przed wszystkimi innymi blokami poziomu zagnieżdżenia bloku.

after: Używany do pozycjonowania bloku po bloku o nazwie określonej w wartości. Jeśli użyta jest wartość "-", blok jest pozycjonowany po wszystkich innych blokach poziomu zagnieżdżenia bloku.

Aktualizacja: przykłady z niektórych aktualizacji układ losowy Rdzeń:

<reference name="right"> 
    <block type="catalog/product_compare_sidebar" before="cart_sidebar" name="catalog.compare.sidebar" template="catalog/product/compare/sidebar.phtml"/> 
</reference> 

<reference name="right"> 
    <block type="catalog/product_list_related" name="catalog.product.related" before="-" template="catalog/product/list/related.phtml"/> 
</reference> 

Aktualizacja: wierzę before i after pracować tylko w core/text_list i podobnych (potomnych) bloków, czyli bloki, które właśnie czynią blokuje ich zagnieżdżone bloki .

+0

proszę Edytuj ur ans z przykładem, abym mógł je zaakceptować. – ScoRpion

+0

co to jest before = "cart_sidebar"? Czy to nazwa szablonu, nazwa bloku czy cokolwiek innego. – ScoRpion

+0

@Showket 'before': ** Używane do pozycjonowania bloku przed blokiem o nazwie określonej w wartości. ** Co nie jest tu jasne? – Zyava

Powiązane problemy