Neu Viel zu wenig Smarty-Blöcke im Template?

csaeum

Sehr aktives Mitglied
23. Juli 2011
1.295
141
Küps
Ja klar kann ich hier mit append und prepand arbeiten.

Beim Shopwareprojekt ist es aber passend gewesen und ich fand es gut das diese beim Menu es so gemacht hatten. Weil so konnte ich mich genau an der Stelle einklinken.

Wir haben zwar in unserm Megamenu direkt die MegaMenu Seiten als Menüpunkt aber wenn man das Menu direkt noch erweitern will, dann geht das nur über Plugin mit phpQuery was ja auch ersetzt werden soll.

Wenn man aber beim Menu 2 solche leeren Boxen hat dann könnte man dementsprechen vor und nach dem "Kategoriemenu" eigene einbinden.

Hier als Beispiel:
PHP:
{block name='frontend_index_navigation_categories'}
    <div class="navigation--list-wrapper">
        {block name='frontend_index_navigation_categories_navigation_list'}
            <ul class="navigation--list container" role="menubar" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement">
                {strip}
                    {block name='frontend_index_navigation_categories_top_home'}
                        <li class="navigation--entry{if $sCategoryCurrent == $sCategoryStart && $Controller == 'index'} is--active{/if} is--home" role="menuitem">
                            {block name='frontend_index_navigation_categories_top_link_home'}
                                <a class="navigation--link is--first{if $sCategoryCurrent == $sCategoryStart && $Controller == 'index'} active{/if}" href="{url controller='index'}" title="{s name='IndexLinkHome' namespace="frontend/index/categories_top"}{/s}" itemprop="url">
                                    <span itemprop="name">{s name='IndexLinkHome' namespace="frontend/index/categories_top"}{/s}</span>
                                </a>
                            {/block}
                        </li>
                    {/block}

                    {block name='frontend_index_navigation_categories_top_before'}{/block}

                    {foreach $sMainCategories as $sCategory}
                        {block name='frontend_index_navigation_categories_top_entry'}
                            {if !$sCategory.hideTop}
                                <li class="navigation--entry{if $sCategory.flag} is--active{/if}" role="menuitem">
                                    {block name='frontend_index_navigation_categories_top_link'}
                                        <a class="navigation--link{if $sCategory.flag} is--active{/if}" href="{$sCategory.link}" title="{$sCategory.description}" itemprop="url">
                                            <span itemprop="name">{$sCategory.description}</span>
                                        </a>
                                    {/block}
                                </li>
                            {/if}
                        {/block}
                    {/foreach}
                    {block name='frontend_index_navigation_categories_top_after'}{/block}
                {/strip}
            </ul>
        {/block}
    </div>
{/block}

Für JTL- Shop 4 müsste man in der categories_mega.tpl in der Zeile 32 eine Box erstellen um mit append oder prepand davor oder dahinter was zu manipulieren die beiden anderen Boxen sind ja schon passen da.
 

csaeum

Sehr aktives Mitglied
23. Juli 2011
1.295
141
Küps
@david habe ja heute ein paar Issues im Gitlab erstellt.

Ist das von der Erklärung so ok? Wollte euch nur die Stelle sagen oder sollte ich gleich Beispiele machen?

Wie gesagt sitzen gerade an einem Template und da fallen mir ein paar Sachen auf!
 

Xantiva

Sehr aktives Mitglied
28. August 2016
1.787
313
Düsseldorf
Nach längerer Zeit mal ein Feedback von mir:

Ich muss gerade ein Child-Template an die 4.06 anpassen - und freue mich über die schon vorhandenen Blöcke!!! :)

Das Child-Template ist viel schlanker geworden, statt ganze Dateien zu kopieren und zu ändern, kann ich an vielen Stellen bereits auf die Blöcke zurückgreifen. Entweder muss ich nur noch ein oder zwei Blöcke übernehmen und modifizieren, oder ich brauche sogar nur noch mit append/prepend zu arbeiten. :thumbsup:

Da es den alten Issue-Tracker so nicht mehr gibt - im neuen gibt es kein Sammelticket mehr, oder?
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
6.693
1.610
Berlin
Es sind noch immer viel zu wenig Blöcke, schaut man sich andere Systeme an die mit smarty arbeiten werden hier fast alle div container außen und innen mit einem Block versehen.
Erst wenn das im EVO oder dem neuem auch so ist, ist es gut und nur so machen die Blöcke wirklich Sinn.
 

Xantiva

Sehr aktives Mitglied
28. August 2016
1.787
313
Düsseldorf
Du hast recht, es könnten noch viel mehr sein. Ich hoffe darauf, dass JTL das für den Shop 5 von Anfang an in der Entwicklung berücksichtigt hat. ;)
Von 224 x {/block} in der 4.05.3 auf 327x in der 4.06.11 ist aber schon mal ein guter Anfang.
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
6.693
1.610
Berlin
Genau das ist das Problem, es ist ein guter Anfang und wenn man sich das zukünftige Template anschaut, sieht man das es nicht besser wird mit den Blöcken.
Ein einfach herausgenommenes Beispiel, weil die Datei jetzt relativ klein ist und da das Template komplett überarbeitet wurde, gehe ich bei diesem auch davon aus, das es zum release nicht weiter verändert wird:

account/login.tpl:

  • 76 Zeilen
  • 3x include einer zusätzlichen tpl Datei
  • 9x div
  • 1x script
  • 1x form

Ich habe in der ganzen Datei sage und schreibe einen Block der die Form umschließt
Das sagt für mich alles aus, denn mit diesem einem Block bin ich NULL flexibel.

  • Die ganze Datei gehört in einen Block, damit ich eventuell auch einfach nur Positionen verschieben oder in dem Block etwas anhängen oder vorsetzen kann
  • Das <h1> gehört in einen Block
  • Die includes gehören jeweils in einen Block
  • Mögliche alerts getrennt info und auch danger gehören jeweils in einen Block
  • In der Form, gehört das fieldset und das legend je in einen Block
  • Jedes einzelne Input gehört in einen Block
  • Jede form-group gehört in einen Block
  • Die Links für register und pw vergessen gehört in einen Block
  • Und wenn ich ein Element mit der Klasse col-xx-xx habe gehört das auch einzeln in einen Block.
Ich könnte in der Datei noch mehr aufzählen aber wir wollen es ja auch nicht übertreiben.
Würde das auch nur annähernd so sein, wäre das schon ein Quantensprung, bis dahin ist die Möglichkeit eines Childtemplates nicht viel besser als die damalige Lösung von _custom Dateien.
 

Xantiva

Sehr aktives Mitglied
28. August 2016
1.787
313
Düsseldorf
Ok, das Evo in der v 4.06.11 hat 213 .tpl-Dateien. da sind dann noch keine 2 Blöcke pro Datei. :(

Vielleicht mag sich ja mal jemand von den JTL-Entwicklern dazu äußern?

Warum macht Ihr damit nicht weiter? Warum erweitert Ihr das Template nicht massiv mit Blöcken, damit die erforderlichen Modifikationen in Child-Templates so klein wie möglich werden?
 
  • Gefällt mir
Reaktionen: _simone_

M.Stickel

Moderator
Mitarbeiter
9. Februar 2016
298
38
Hi,
wir haben euer Feedback aufgenommen und werden mit dem neuen Template in Shop 5.0.0 die Anzahl der Smartyblöcke deutlich erhöhen.
Die Änderungen am Template werden voraussichtlich bereits in der Beta2 drin sein. Falls euch dann an bestimmten Stellen immernoch Blöcke fehlen, gebt uns bitte Bescheid. Wir werden die dann gern noch aufnehmen!
 

css-umsetzung

Offizieller Servicepartner
SPBanner
6. Juli 2011
6.693
1.610
Berlin
Hi,
wir haben euer Feedback aufgenommen und werden mit dem neuen Template in Shop 5.0.0 die Anzahl der Smartyblöcke deutlich erhöhen.
Die Änderungen am Template werden voraussichtlich bereits in der Beta2 drin sein. Falls euch dann an bestimmten Stellen immernoch Blöcke fehlen, gebt uns bitte Bescheid. Wir werden die dann gern noch aufnehmen!
Das Problem hierbei ist, wenn ich für einen Kunden ein Template anpassen soll, dann sehe ich erst das genau der Teil wo ich es brauche, zu wenig unterstützende Blöcke hat. Das ist der Moment wo es bereits zu spät ist. :)

Ich schrieb ja schon wie Blöcke meiner Meinung nach eingesetzt werden sollten, eventuell übertreibe ich es dabei auch ein wenig aber in diese Richtung sollte es schon gehen.
 

Ähnliche Themen