Fehler in Detailseite nach Update 5.0

Hallo, nach dem erfolgreichen Update auf die Version 5.0 bekomme ich nun beim Aufruf der Detailseite eines Artikels leeere Seite und in der log-Datei ist folgendes vermerkt: Message: exception ‚SmartyCompilerException‘ with message ‚Syntax Error in template „/home/www/meine-domain/onlineshop/templates/emotion_meine/frontend/detail/navigation.tpl“ on line 2 „“ illegal recursive call of „parent:frontend/detail/navigation.tpl“‘ in /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php:657 Stack trace: #0 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_compile_extends.php(82): Smarty_Internal_TemplateCompilerBase->trigger_template_error(‚illegal recursi…‘, 2) #1 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(465): Smarty_Internal_Compile_Extends->compile(Array, Object(Smarty_Internal_SmartyTemplateCompiler), Array, NULL, NULL) #2 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(249): Smarty_Internal_TemplateCompilerBase->callTagCompiler(‚extends‘, Array, Array) #3 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(2388): Smarty_Internal_TemplateCompilerBase->compileTag(‚extends‘, Array) #4 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3101): Smarty_Internal_Templateparser->yy_r36() #5 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3201): Smarty_Internal_Templateparser->yy_reduce(36) #6 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_smartytemplatecompiler.php(105): Smarty_Internal_Templateparser->doParse(10, ‚\n\n‘) #7 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(192): Smarty_Internal_SmartyTemplateCompiler->doCompile(’{extends file=’…’) #8 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_compile_include.php(146): Smarty_Internal_TemplateCompilerBase->compileTemplate(Object(Enlight_Template_Default)) #9 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(475): Smarty_Internal_Compile_Include->compile(Array, Object(Smarty_Internal_SmartyTemplateCompiler), Array, NULL, NULL) #10 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(249): Smarty_Internal_TemplateCompilerBase->callTagCompiler(‚include‘, Array, Array) #11 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(2388): Smarty_Internal_TemplateCompilerBase->compileTag(‚include‘, Array) #12 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3101): Smarty_Internal_Templateparser->yy_r36() #13 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3201): Smarty_Internal_Templateparser->yy_reduce(36) #14 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_smartytemplatecompiler.php(105): Smarty_Internal_Templateparser->doParse(10, ‚\n‘) #15 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(192): Smarty_Internal_SmartyTemplateCompiler->doCompile(’\n\t{include file…’) #16 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_compile_block.php(197): Smarty_Internal_TemplateCompilerBase->compileTemplate(Object(Smarty_Internal_Template)) #17 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_compile_block.php(255): Smarty_Internal_Compile_Block::compileChildBlock(Object(Smarty_Internal_SmartyTemplateCompiler), ‚frontend_index_…‘) #18 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(475): Smarty_Internal_Compile_Blockclose->compile(Array, Object(Smarty_Internal_SmartyTemplateCompiler), Array, NULL, NULL) #19 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(249): Smarty_Internal_TemplateCompilerBase->callTagCompiler(‚blockclose‘, Array, Array) #20 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(2493): Smarty_Internal_TemplateCompilerBase->compileTag(‚blockclose‘, Array) #21 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3101): Smarty_Internal_Templateparser->yy_r58() #22 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templateparser.php(3201): Smarty_Internal_Templateparser->yy_reduce(58) #23 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_smartytemplatecompiler.php(105): Smarty_Internal_Templateparser->doParse(10, ‚\n\t\t\t\t\n\t\t\t\t‘) #24 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatecompilerbase.php(192): Smarty_Internal_SmartyTemplateCompiler->doCompile(’{**\n * Shopware…’) #25 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_template.php(187): Smarty_Internal_TemplateCompilerBase->compileTemplate(Object(Enlight_Template_Default)) #26 /home/www/meine-domain/onlineshop/engine/Library/Smarty/sysplugins/smarty_internal_templatebase.php(155): Smarty_Internal_Template->compileTemplateSource() #27 /home/www/meine-domain/onlineshop/engine/Library/Enlight/View/Default.php(274): Smarty_Internal_TemplateBase->fetch() #28 /home/www/meine-domain/onlineshop/engine/Library/Enlight/Controller/Plugins/ViewRenderer/Bootstrap.php(216): Enlight_View_Default->render(Object(Enlight_Template_Default)) #29 /home/www/meine-domain/onlineshop/engine/Library/Enlight/Controller/Plugins/ViewRenderer/Bootstrap.php(242): Enlight_Controller_Plugins_ViewRenderer_Bootstrap->renderTemplate(Object(Enlight_Template_Default)) #30 /home/www/meine-domain/onlineshop/engine/Library/Enlight/Controller/Plugins/ViewRenderer/Bootstrap.php(136): Enlight_Controller_Plugins_ViewRenderer_Bootstrap->render() … Kann jemand etwas zu dieser Meldung sagen ? Grüße Jan

Hi, das sieht für mich erstmal so aus, als würdest du in “frontend/detail/navigation.tpl” eine Rekursion verursachen, indem du das gleiche Template nochmal inkludierst / extendest. Ich weiß jetzt aber nicht, ob das ein Plugin-Problem oder ein individuelles in deinem eigenen Template ist - aber in der Datei könntest du mal nachschauen, falls du die händisch überschrieben hast? Daniel

1 „Gefällt mir“

Hallo Daniel, zuerst besten Dank für deine schnelle Info. Ich hatte / habe nur wenige zusätzliche Plugins. 1) „Zusätzliche Artikel Attributsfelder“ - Shopware 2) „Lightbox“ - Shopware 3) „Individuelle Optionen“ - Pixeleyes (wurde deinstalliert) 4) „Preis auf Anfrage“ - kuzo media (wurde deinstalliert) Ich mache mich nun auf die Suche . . . Grüße Jan

Hallo Daniel, ich habe das Backup eingespielt (also die Version 4.3.6) dann die fremden Plugins komplett deinstalliert und dann das Update durchgeführt. Hat leider nicht geholfen, die Fehlermeldung kommt immer noch :-(( Gruß

Hi, hast du denn ein eigenes Template aktiviert, das du probeweise mal umstellen kannst auf ein Standardtemplate? Daniel

frontend/detail/navigation.tpl gibt es im emotion-Template von Shopware 5 nicht mehr. Such in deinem Template nach navigation.tpl und ersetze den Bereich. Das wird jetzt durch ‘frontend/index/breadcrumb.tpl’ umgesetzt.

Hallo hth, besten Dank für die Info. Damit ich es richtig verstehe. Meine frontend/detail/navigation.tpl sieht so aus: extends file=‘parent:frontend/detail/navigation.tpl’} {* Article navigation *} {block name=‘frontend_detail_menu_top’} {* Breadcrumb *}

{if !{config name=disableArticleNavigation}}
{s name=‘DetailNavIndex’}{/s}
{/if} {if $sShopname} [{$sShopname}]({url controller=‘index’}) {/if} {foreach name=breadcrumb from=$sBreadcrumb item=breadcrumb} {if $breadcrumb.name} {if $smarty.foreach.breadcrumb.last} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} “{$breadcrumb.name}”) {else} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} “{$breadcrumb.name}”) {/if} {/if} {/foreach}

Ich soll nach dem Update den Inhalt ändern: extends file=‘parent: frontend/index/breadcrumb.tpl’} {* Article navigation *} {block name=‘frontend_detail_menu_top’} … … … Richtig ?? Grüße jan

Hallo jabon, 1. Die navigation.tpl ist gestrichen und ebenso der Block, den Du dort verwendest. 2. index/breadcrumb.tpl erzeugt jetzt auch auf der Artikeldetailseite die Breadcrumbnavigation. Wenn Du dafür Änderungen in navigation.tpl gemacht hast, gehören diese nun in index/breadcrumb.tpl . Alternativ erstellst Du eine eigene tpl-Datei unter /detail/ und bindest diese mit einem include ein. Dafür musst Du aber /detail/index.tpl anpassen und dort den Include setzen. Der gepostete Code sieht mir auf den ersten Blick nach „original“ Shopware aus. Was soll denn dort geändert werden. Um die anzupassen, muss man die Dateien im Verzeichnis frontend/index bearbeiten. Also nach dem Update, diese Datei ändern. : frontend/index/breadcrumb.tpl [code]{* Breadcrumb *}

{* Eigener Template-Code *}
[/code] 3. in der detail/index.tpl ist bei Shopware 4 dieser Block enthalten. Der ist in Shopware 5 emotion Template nicht mehr dort. {block name='frontend\_index\_breadcrumb'} {include file='frontend/detail/navigation.tpl'} {/block} Wenn im eigenen Template eine detail/index.tpl vorhanden ist, in der dieser Block steht, dann müsste man diesen dort löschen. Die Fehlermeldung hört sich allerdings danach an, als wenn navigation.tpl an anderer Stelle im Template erneut aufgerufen wird. Es muss dann überall korrigiert werden. Daher habe ich vorgeschlagen, das ganze eigene Template nach dem String navigation.tpl durchsuchen und die Stellen löschen bzw. durch einen eigenen Include ersetzen. Sorry, dass es kompliziert klingt, ich weiß nicht wirklich, was Du mit der Änderung erreichen möchtest. [quote=„jabon“]Hallo hth, besten Dank für die Info. Damit ich es richtig verstehe. Meine frontend/detail/navigation.tpl sieht so aus: extends file=‚parent:frontend/detail/navigation.tpl‘} {* Article navigation *} {block name=‚frontend_detail_menu_top‘} {* Breadcrumb *}
{if !{config name=disableArticleNavigation}}
{s name=‚DetailNavIndex‘}{/s}
{/if} {if $sShopname} [{$sShopname}]({url controller=‚index‘}) {/if} {foreach name=breadcrumb from=$sBreadcrumb item=breadcrumb} {if $breadcrumb.name} {if $smarty.foreach.breadcrumb.last} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} „{$breadcrumb.name}“) {else} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} „{$breadcrumb.name}“) {/if} {/if} {/foreach}

Ich soll nach dem Update den Inhalt ändern: extends file=‚parent: frontend/index/breadcrumb.tpl‘} {* Article navigation *} {block name=‚frontend_detail_menu_top‘} … … … Richtig ?? Grüße jan[/quote]