Jestem front-end Magento dev, stworzyliśmy sporo moich własnych tematów i chcę zrozumieć pozycjonowanie bloku XML Magento lepiej ...Magento XML przy użyciu przed/po umieszczać bloki prawie nigdy nie działa
normalnie użyć pliku local.xml
manipulować wszystko, mogę zdefiniować blok następująco:
<cms_index_index>
<reference name="root">
<block type="core/template" name="example_block" as="exampleBlock" template="page/html/example-block.phtml"/>
</reference>
</cms_index_index>
byłoby to utworzenie bloku na stronie głównej (cms_index_index
) a ponieważ blok jest tworzony jeden poziom pod root
, ja normalnie wywoła blok, dodając:
<?php echo $this->getChildHtml('exampleBlock') ?>
... do 1column.phtml
(lub 2columns-left
/right.phtml
, 3columns.phtml
etc). Blok można umieścić na dowolnej stronie, zastępując odpowiednią etykietę strony, zastępując cms_index_index
.
widzę rzeczy jak poniżej całym podstawowych plików XML, oraz podręcznikach:
<reference name="root">
<block type="core/template" name="example_block" before="content" template="page/html/example-block.phtml"/>
</reference>
content
jest blok, który jest częścią ogólnej struktury strony Magento i, z tego co rozumiem, before="content"
należy go umieścić gdziekolwiek byś się spodziewał, bez potrzeby używania getChildHtml('exampleBlock')
, jak dotąd tak dobrze ... jednak, przed/po prawie nigdy nie wydaje się pracować dla mnie, i często znajduję się uciekania się do metody getChildHtml jako kopii zapasowej, co nie zawsze jest idealny i oznacza edytowanie większej liczby plików .phtml niż to konieczne.
Próbowałem: pojawia
<reference name="root">
<block type="core/template" name="example_block" before="content" template="page/html/example-block.phtml"/>
</reference>
Nic ...
<reference name="root">
<block type="core/template" name="example_block" after="header" template="page/html/example-block.phtml"/>
</reference>
nadal nic .... Mam też świadomość korzystania before="-"
lub after="-"
umieścić coś zanim wszystko w zasięgu to blok nadrzędny. Czasami mam z tym trochę szczęścia, ale generalnie po prostu czuję się zdezorientowany i sfrustrowany.
Mam google w całym miejscu na "Magento xml przed/po nie działa" i zaczyna się zastanawiać, czy to po prostu mnie to dzieje ... może ktoś wyjaśnić, kiedy mogę i nie mogę używać przed/po układać klocki? Co jest nie tak z powyższymi przykładami?
jestem w Magento 1.7.0.2 (ostatni dostępny w momencie delegowania)
Główną motywacją jest to, aby zmniejszyć liczbę plików rdzenia .phtml muszę zmieniać tylko dodać getChildHtml()
, więc jeśli istnieje inny (XML) sposób obejścia tego, chciałbym wiedzieć ...
wszystkie bufory są wyłączone:/ –