kanumakanuma MemberComments: 228 Received thanks: 50 Member since: May 2014

Moin,

wenn man einen Controller erstellt wie hier:

https://docs.shopware.com/en/shopware-platform-dev-en/internals/plugins/plugin-quick-start?category=shopware-platform-dev-en/internals/plugins#creating-a-controller

wie lade ich am besten das zugehörige Template, welches vom Shop Template erbt? Also z.b die content Seite um etwas darzustellen ...

Mit freundlichen Grüßen 

marc

Answers

  • kanumakanuma MemberComments: 228 Received thanks: 50 Member since: May 2014

    Danke, aber das meinte ich nicht ...

    mehr oder weniger welchen Return muss man angeben, bzw. Wie rendert man das Template...

  • ShopwareianerShopwareianer MemberComments: 3500 Received thanks: 617 edited June 11 Member since: November 2013

    Okay, verstehe. Du meinst also wie du einen kompletten custom view für das Frontend rendert? Das ist eine gute Frage.

    In Symfony geht es ja generell mit:

    /**
     * @Route("/default/hello", name="default_hello")
     */
    ....
    return $this->render('default/hello.html.twig', [
        'who' => 'World',
    ]);

    Gibt es dazu schon Infos @Patrick Stahl@Moritz Naczenski‍ wie man ein custom twig Template aus einem Plugin heraus an die Storefront übergibt? Das würde mich auch interessieren, oder geht das aktuell noch nicht?

  • kanumakanuma MemberComments: 228 Received thanks: 50 edited June 11 Member since: May 2014

    genau... das habe ich auch schon herrausgerunfen... in der keynote in einer Präsentation gibt es ein Code-snippet, aber das hilft nicht wiklich. Leider konnte ich bislang das template nur bedingt laden... leider wird die NAVIGATIOn etc nicht mitgelden. Hier meine route: http://shopware:8000/paulfirstplugin/show/raitings

    image

     

    image

     

     

    image

  • Patrick StahlPatrick Stahl ModeratorComments: 472 Received thanks: 194 Member since: August 2011

    Guten Morgen @Shopwareianer‍ und @kanuma‍!

    $this->render zu nutzen ist garnicht so verkehrt. Dann aber bitte lieber $this->renderStorefront, macht im Prinzip das Gleiche, wirft aber noch ein Event dazu.  :-)

    Bezüglich der Navigation:
    Extende bitte einmal von der Datei @Storefront/base.html.twig.

    Generell gilt es hier aber dazu zu sagen, dass das im Standard häufig noch ein bisschen anders gelöst wird.
    Wenn dein Controller selbst auch in mehrere Bereiche aufgeteilt ist (Eine Übersicht, eine Detailansicht, ...), extenden wir meistens nicht direkt von der o.g. Datei, sondern erst von einer Art "Fundament" Datei, die von allen Templates des Controllers genutzt wird.
    Diese "Fundament" Datei stellt quasi die grobe Struktur der Controller Templates dar.
    Hier mal am Beispiel des Account Controllers. In der ersten Zeile wird von einer _page.html.twig extended. Und das passiert bei allen Account Templates.
    Und eben jenes _page Template extended dann erst von der base.html.twig.
    Das Naming zieht sich so konsequent durch. Wenn du nun aber einen Controller hast, der eh nur einen Bereich kennt und rendert (bspw. Detailseite), ist das natürlich überflüssig.

    Hilft das irgendwie weiter? Foot-in-Mouth

    Gruß,
    Patrick Shopware

  • kanumakanuma MemberComments: 228 Received thanks: 50 edited June 12 Member since: May 2014

    Moin Paktrik!

    Danke für deine ausführliche Antwort. Leider erschließt sich mir nicht, weshalb ich von @Storefront/base.html.twig extenden soll, denn das Template kennt doch gar nicht das "Gerüst" für eine Content/CMS Seite oder ? Also ich hab das mal eingefügt, dann bleibt aber die Seite leer. Die Navigation etc wird auch nicht geladen.

    Evtl. kannst du das nochmal prüfen :-)

    image

    image

  • Patrick StahlPatrick Stahl ModeratorComments: 472 Received thanks: 194 Member since: August 2011

    Moin @kanuma‍,

    entschuldige, ich hatte übersehen, dass du bereits von page/content/index.html.twig extendest, und die Information, dass du eine CMS Seite bauen möchtest. Hatte irgendwie im Kopf, dass da dein eigenes Template steht.

    Einfach mal die Dau-Frage: Die Navigation ist sonst überall da und du hast auch durchaus ein paar Kategorien?
    Wenn Ja, wüsste ich gerade spontan auch nicht, warum die Navigation bei dir nicht angezeigt wird, da müsste ich auch erstmal schauen und das Szenario nachbauen, sorry! Foot-in-Mouth
    Ggf. hat der @Stephan Pohl‍ da aber einen Rat. :-)

    Gruß,
    Patrick Shopware
     

  • kanumakanuma MemberComments: 228 Received thanks: 50 edited June 12 Member since: May 2014

    Moin Patrik,

    genau ich möchte eine Content-Seite bauen, also ausprobieren... Der Inhalt ist ja erstmal egal. Die Seite soll unter einer beliebigen Route erreichbar sein z.B. /Kundenbewertungen.

    Ja: Die Navigation ist sonst überall da :-)

  • kanumakanuma MemberComments: 228 Received thanks: 50 Member since: May 2014
Sign In or Register to comment.