Wie rufe ich einen Block in einem phtml anstatt durch ein Layout auf?

8

Ich habe das Layout für den Wishlist-Block deaktiviert:

%Vor%

Ich möchte diesen Block jetzt im phtml aufrufen, anstatt ihn einem anderen Layout hinzuzufügen.

Wie rufe ich es direkt an?

    
Chris 26.04.2011, 20:51
quelle

4 Antworten

31

Während Prattski richtig ist, dass dies eine schlechte Form ist (bin ich upboting als solche), gab es Zeiten, in denen sich entwickelte, wenn entweder dies eine wertvolle Debugging-Technik war, oder es den Unterschied von mehreren Stunden Programmierung machte. In diesem Sinne ist dies die schlechte Angewohnheit, es zu tun:

%Vor%

Verwenden Sie sparsam, wenn überhaupt.

    
Joseph Mastey 26.04.2011, 22:48
quelle
12
%Vor%

Dies kann überall verwendet werden, um Blöcke aufzurufen. setSomeVariable($variable) wenn gesetzt, kann in someblock.phtml by $this->getSomeVariable();

zugegriffen werden     
R T 05.04.2013 11:35
quelle
3

Chris - Sie sollten einen Block immer direkt in einer Vorlage aufrufen müssen. Es wäre eine schlechte Angewohnheit / Gewohnheit, hineinzukommen. Suchen Sie den richtigen Verweis auf die Vorlage, der Sie den Block hinzufügen möchten, und fügen Sie sie dem Layout-XML hinzu. Verwenden Sie dann innerhalb der Vorlagendatei:

%Vor%     
Prattski 26.04.2011 21:55
quelle
3

Ich habe jahrelang damit zu kämpfen gehabt und festgestellt, dass, wenn Sie einen Block von einem völlig separaten Teil des Layouts aufrufen möchten, Sie etwas anderen Code verwenden müssen. Verwenden Sie:

%Vor%

Anstelle von:

%Vor%

Mit diesem Code können Sie entweder Ihre eigenen Blöcke irgendwo erstellen oder Blöcke von anderen Modulen auswählen und sie überall hinstellen.

    
Charlie Tupman 26.02.2016 14:55
quelle

Tags und Links