Bonjour,
Il me reste quelques pages avec des erreurs 500 en mode debug uniquement & sous PHP 7.4 (aucun problème sous PHP 7.3) avec un thème custom (pas d'assistance possible) et PS 1.7.8.11.
J'ai identifié la source du problème (concernant les pages "catégorie") : si et uniquement si il n'y a pas d'image de "couverture de la catégorie", alors j'ai un avertissement en mode debug "ContextErrorException ; Notice: Trying to access array offset on value of type NULL".
Voici le passage concerné dans mon fichier "microdata-jsonld.tpl" :
{elseif $page.page_name === 'category' && isset($category) && $category.image.large.url}
J'ai essayé de modifier le code de cette façon (est-ce correct ?) :
{elseif $page.page_name === 'category' && isset($category) && isset($category.image.large.url)}
Du coup l'erreur pointe maintenant sur le fichier "category-header.tpl", mais cela concerne maintenant le cas ou on laisse le champs "Balise titre" vide. Voici mon fichier "category-header.tpl" actuellement :
<div class="block-category card-block visible--desktop"> {*<div id="_desktop_category_header"> <h1 class="h1">{$category.name}{if isset($smarty.get.page) && $smarty.get.page > 1} <span class="small"> - Page {$smarty.get.page}</span>{/if}</h1> </div>*} {if ($category.description || $category.image.large.url) && $listing.pagination.items_shown_from == 1} <div class="d-flex"> <!--{if $category.description} <div id="category-description" class="text-muted">{$category.description nofilter}</div> {/if}--> {if $category.image.large.url} <div class="category-cover"> <img src="{$category.image.large.url}" class="lazyload" alt="{if !empty($category.image.legend)}{$category.image.legend}{else}{$category.name}{/if}"> </div> {/if} </div> {/if} </div> <div class="_mobile_category_header"></div>
Et la partie concernant "$category.name" qui a été transféré dans "layout-both-columns.tpl" :
{if $page.page_name == 'category'} <div class="name_category"> <h1 class="breadcrum-title">{$category.name}{if isset($smarty.get.page) && $smarty.get.page > 1} <span class="small"> - Page {$smarty.get.page}</span>{/if}</h1> </div> {elseif $page.page_name == 'product'} <div class="name_product"> {block name='page_header_container'} {block name='page_header'} <h1 class="breadcrum-title">{block name='page_title'}{$product.name}{/block}</h1> {/block} {/block} </div> {else} <div class="name_h1"> <h1 class="breadcrum-title">{block name='page_title'}{$page.meta.title} {/block}</h1> </div> {/if}
Merci pour votre aide :-)