gouna Posted January 21, 2020 Share Posted January 21, 2020 Bonjour, Je suis sous prestashop 1.6 (gounacreations.com). Depuis ce soir j'ai une alerte de la console Google : "data-vocabulary.org schema deprecated" Auriez vous une solution pour corriger ce problème ? Merci par avance. Cordialement Link to comment Share on other sites More sharing options...
Eolia Posted January 21, 2020 Share Posted January 21, 2020 Corriger le breadcrumb.tpl de votre thème^^ Link to comment Share on other sites More sharing options...
gouna Posted January 21, 2020 Author Share Posted January 21, 2020 Bonjour merci pour votre réponse, je vais m'atteler à la tâche demain matin 👌 Link to comment Share on other sites More sharing options...
minimeca Posted January 22, 2020 Share Posted January 22, 2020 mais ça implique quoi exactement ?? il faut modifier tout les fichiers ou data-vocabulary est présent ? Link to comment Share on other sites More sharing options...
Eolia Posted January 22, 2020 Share Posted January 22, 2020 Ca implique de lire ma réponse^^ Il n'y a que le breadcrumb.tpl de concerné dans les thèmes Prestashop et le modèle de structure est donné dans le tweet joint par Google himself. Link to comment Share on other sites More sharing options...
minimeca Posted January 22, 2020 Share Posted January 22, 2020 ok mais j'ai des alertes google et en regardant j'ai trouvé data-vocabulary dans des catégories ou des produits Link to comment Share on other sites More sharing options...
Eolia Posted January 22, 2020 Share Posted January 22, 2020 Sans déconner, vous êtes sérieux ??? Le breadcrumb c'est le fil d'ariane, il est présent sur TOUTES les pages ! 2 Link to comment Share on other sites More sharing options...
minimeca Posted January 22, 2020 Share Posted January 22, 2020 donc il faut modifier toutes les pages ??? Link to comment Share on other sites More sharing options...
Eolia Posted January 22, 2020 Share Posted January 22, 2020 Bon, j'abandonne... 1 2 1 Link to comment Share on other sites More sharing options...
minimeca Posted January 22, 2020 Share Posted January 22, 2020 j'ai bien compris que il fallait modifier le fichier breadcrumb.tpl, mais la structure du mien ne correspond pas du tout a celle du tweet Link to comment Share on other sites More sharing options...
Eolia Posted January 22, 2020 Share Posted January 22, 2020 Et moi je ne suis pas devin et je ne connais pas le contenu de votre breadcrumb.tpl. Ensuite il y a une autre solution en modifiant Tools.php et en utilisant un breadcrumb.tpl générique mais là je sens que ça va être coton à vous expliquer Link to comment Share on other sites More sharing options...
minimeca Posted January 22, 2020 Share Posted January 22, 2020 (edited) oui je pense aussi .... moi j'ai ça , je suis 1.6.1.23 <!-- Breadcrumb --> {if isset($smarty.capture.path)}{assign var='path' value=$smarty.capture.path}{/if} <div class="breadcrumb clearfix"> <a class="home" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}" title="{l s='Return to Home'}"><i class="icon-home"></i></a> {if isset($path) AND $path} <span class="navigation-pipe"{if isset($category) && isset($category->id_category) && $category->id_category == (int)Configuration::get('PS_ROOT_CATEGORY')} style="display:none;"{/if}>{$navigationPipe|escape:'html':'UTF-8'}</span> {if $path|strpos:'span' !== false} <span class="navigation_page">{$path|@replace:'<a ': '<span itemscope itemtype="http://data-vocabulary.org"><a itemprop="url" '|@replace:'data-gg="">': '><span itemprop="title">'|@replace:'</a>': '</span></a></span>'}</span> {else} {$path} {/if} {/if} </div> {if isset($smarty.get.search_query) && isset($smarty.get.results) && $smarty.get.results > 1 && isset($smarty.server.HTTP_REFERER)} <div class="pull-right"> <strong> {capture}{if isset($smarty.get.HTTP_REFERER) && $smarty.get.HTTP_REFERER}{$smarty.get.HTTP_REFERER}{elseif isset($smarty.server.HTTP_REFERER) && $smarty.server.HTTP_REFERER}{$smarty.server.HTTP_REFERER}{/if}{/capture} <a href="{$smarty.capture.default|escape:'html':'UTF-8'|secureReferrer|regex_replace:'/[\?|&]content_only=1/':''}" name="back"> <i class="icon-chevron-left left"></i> {l s='Back to Search results for "%s" (%d other results)' sprintf=[$smarty.get.search_query,$smarty.get.results]} </a> </strong> </div> {/if} <!-- /Breadcrumb --> Edited January 22, 2020 by minimeca (see edit history) Link to comment Share on other sites More sharing options...
Daresh Posted January 22, 2020 Share Posted January 22, 2020 Link to comment Share on other sites More sharing options...
Eolia Posted January 22, 2020 Share Posted January 22, 2020 <div class="breadcrumb clearfix"> <a class="home" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}" title="{l s='Return to Home'}"><i class="icon-home"></i></a> {if isset($path) AND $path} <span class="navigation-pipe"{if isset($category) && isset($category->id_category) && $category->id_category == (int)Configuration::get('PS_ROOT_CATEGORY')} style="display:none;"{/if}>{$navigationPipe|escape:'html':'UTF-8'}</span> {if $path|strpos:'span' !== false} <span class="navigation_page">{$path|@replace:'<a ': '<span itemscope itemtype="http://data-vocabulary.org"><a itemprop="url" '|@replace:'data-gg="">': '><span itemprop="title">'|@replace:'</a>': '</span></a></span>'}</span> {else} {$path} {/if} {/if} </div> à remplacer par <div class="breadcrumb clearfix" itemscope itemtype="http://shema.org/BreadcrumList"> <a class="home" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}" title="{l s='Return to Home'}"><i class="icon-home"></i></a> {if isset($path) AND $path} <span class="navigation-pipe"{if isset($category) && isset($category->id_category) && $category->id_category == (int)Configuration::get('PS_ROOT_CATEGORY')} style="display:none;"{/if}>{$navigationPipe|escape:'html':'UTF-8'}</span> {if $path|strpos:'span' !== false} <span class="navigation_page">{$path|@replace:'<a ': '<span itemprop="itemListElement" itemscope itemtype="http://shema.org/ListItem"><a itemprop="item" '|@replace:'data-gg="">': '><span itemprop="name">'|@replace:'</a>': '</span></a></span>'}</span> {else} {$path} {/if} {/if} </div> Pour la position, c'est impossible (mais pas grave) depuis le breadcrumb.tpl, du coup il faut passer par tools car {$path} est construit là-bas. 1 Link to comment Share on other sites More sharing options...
minimeca Posted January 22, 2020 Share Posted January 22, 2020 magnifik !!! merci beaucoup Pierre effectivement il me reste un warning pour POSITION .... je verrais plus tard pour comprendre comment ça marche ... si j'en suis capable Link to comment Share on other sites More sharing options...
gouna Posted January 22, 2020 Author Share Posted January 22, 2020 Bonjour, la solution de Daresh semble contourner ce problème il me semble. 1 Link to comment Share on other sites More sharing options...
kokoon Posted January 22, 2020 Share Posted January 22, 2020 Bonjour à tous, Je partage un article intéressant sur le sujet, avec un fix pour Presta 1.6 en bas de l'article : https://www.vinvin.dev/fils-dariane-problemes-detectes/ 1 Link to comment Share on other sites More sharing options...
ikaris Posted January 23, 2020 Share Posted January 23, 2020 On 1/22/2020 at 9:59 AM, minimeca said: oui je pense aussi .... moi j'ai ça , je suis 1.6.1.23 <!-- Breadcrumb --> {if isset($smarty.capture.path)}{assign var='path' value=$smarty.capture.path}{/if} <div class="breadcrumb clearfix"> Bonjour Minimeca J'ai exactement la même chose que toi dans le breadcrumb.tpl (j'ai un thème Template Monster sur un prestashop 1.6.0.14). Pourrai tu me donner le nouveau contenu de ton breadcrumb.tpl. modifié car j'avoue ne pas comprendre grand chose à la modif à faire si on a pas le thème Presta de base... Faut-il faire autre chose de plus ailleurs ? Merci beaucoup ! Link to comment Share on other sites More sharing options...
Foovince Posted January 23, 2020 Share Posted January 23, 2020 On 1/22/2020 at 6:15 AM, kokoon said: Bonjour à tous, Je partage un article intéressant sur le sujet, avec un fix pour Presta 1.6 en bas de l'article : https://www.vinvin.dev/fils-dariane-problemes-detectes/ Yes merci pour la référence. Comme indiqué dans mon article, il faut bien faire attention si c'est un thème custom ou autre. Ca vient du theme par défaut de Prestashop 1.6 Si vous avez des questions - n"hésitez pas à les poster ici ou en commentaire de l'article, je répond rapidement ;-) Il existe aussi peut etre des plugins qui permettent l'intégration du format JSON-LD pour éviter se méler avec le HTML. Bon courage à tout le monde, 1 Link to comment Share on other sites More sharing options...
minimeca Posted January 23, 2020 Share Posted January 23, 2020 depuis mes modifs d'hier j'ai encore des alertes google concernant "POSITION" google dit bien ERREUR , visiblement c'est considéré comme grave. Link to comment Share on other sites More sharing options...
Foovince Posted January 23, 2020 Share Posted January 23, 2020 Oui, il faut l'attribut position et la valeur de cette dernière dans le breadcrumb. Dans le fichier tpl partagé sur mon article, il y a bien la position. Dans le code que tu as partagé plus haut, il y a pas "position". Voir dans mon article et pour voir a adapter ton fichier tpl et prendre en compte cet attribut Link to comment Share on other sites More sharing options...
minimeca Posted January 23, 2020 Share Posted January 23, 2020 ok mais j'imagine que le POSITION je ne le met pas au pif ? Link to comment Share on other sites More sharing options...
Foovince Posted January 23, 2020 Share Posted January 23, 2020 Non 😉 Avec ce code là : Tu créer un tableau Breadcrum qui contient tous les éléments de ton fils d'ariane. {if !empty($path)} {* Extract bradcrumb links from anchors *} {$matchCount = preg_match_all('/<a.+?href="(.+?)"[^>]*>([^<]*)<\/a>/', $path, $matches)} {$breadcrumbs = []} {for $i=0; $i<$matchCount; $i++} {$breadcrumbs[] = ['url' => $matches[1][$i], 'title' => $matches[2][$i]]} {/for} {* Extract the last breadcrumb which is not link, it's plain text or text inside span *} {$match = preg_match('/>([^<]+)(?:<\/\w+>\s*)?$/', $path, $matches)} {if !empty($matches[1])} {$breadcrumbs[] = ['url' => '', 'title' => $matches[1]]} {elseif !$match && !$matchCount} {$breadcrumbs[] = ['url' => '', 'title' => $path]} {/if} {/if} Et dans cette partie du code : Tu as la boucle qui créer les éléments de ton breadcrumb et la possibilités d'ajouter la position via : itemprop="position" content="{($smarty.foreach.crumbs.iteration|intval + 1)}" {if !empty($breadcrumbs)} {foreach from=$breadcrumbs item=breadcrumb name=crumbs} <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"> {if !empty($breadcrumb.url)} <a href="{$breadcrumb.url}" itemprop="item"> <span itemprop="name">{$breadcrumb.title}</span> </a> {else} <span itemprop="name">{$breadcrumb.title}</span> {/if} <meta itemprop="position" content="{($smarty.foreach.crumbs.iteration|intval + 1)}" /> </li> {/foreach} {/if} Link to comment Share on other sites More sharing options...
minimeca Posted January 23, 2020 Share Posted January 23, 2020 c'est du chinois tout ça Link to comment Share on other sites More sharing options...
Foovince Posted January 23, 2020 Share Posted January 23, 2020 So apprend le chinois :V Mais honnêtement, je suis pas magicien, je n'ai pas accès a ton code source, tu ne partage aucune ligne de code... Comment veux tu que je fasse pour t'aider ? Je te montre (gratuitement) et je t'explique des choses techniques... So oui ça peut paraitre du chinois, mais si souhaites pas l'apprendre... tu peux toujours engager un freelance/agence WEB pour le faire. bon chance Link to comment Share on other sites More sharing options...
minimeca Posted January 23, 2020 Share Posted January 23, 2020 mon fichier est plus haut Link to comment Share on other sites More sharing options...
Foovince Posted January 24, 2020 Share Posted January 24, 2020 Remplace le code source par celui ci : https://gist.githubusercontent.com/vinvin27/39d61ebe902170d8d92ef57ccd261e3f/raw/563f5b5c06bf8e09f2c91baa3798c48916b7b3e0/Breadcrumb%20%20Prestashop%201.6 comme indiqué dans mon article... et zou Link to comment Share on other sites More sharing options...
ikaris Posted January 24, 2020 Share Posted January 24, 2020 Bonjour Foovince Merci pour l'aide et ton article. J'ai remplacé le code source de Minimeca (j'ai le même que lui à la base) par celui que tu donne ci-dessus. J'ai demandé à google de vérifier la modif et j'attends le retour. Je te remercie car pour moi c'est du mandarin-chinois tout ça Faut t-il faire autre chose que ce changement de code dans le fichier breadcrumb.tpl de mon template ? Encore merci pour cette aide et tes explications 1 Link to comment Share on other sites More sharing options...
minimeca Posted January 24, 2020 Share Posted January 24, 2020 merci pour a tous , effectivement plus de message concernant POSITION par contre j'ai un paquet de message ERREUR concernant mes produits, a mon avis la 1.6 n'est plus a jour par rapport a schema.org exemple concernant le prix, ça me dit que 5,00€ n'est pas un prix valide ...... Link to comment Share on other sites More sharing options...
minimeca Posted January 24, 2020 Share Posted January 24, 2020 ok je viens de comprendre, c'est € qui lui pose problème Link to comment Share on other sites More sharing options...
Eolia Posted January 24, 2020 Share Posted January 24, 2020 C'est votre thème qui pose problème, pas la 1.6, le thème par défaut est conforme: Link to comment Share on other sites More sharing options...
minimeca Posted January 24, 2020 Share Posted January 24, 2020 ben pourtant j'utilise le thème de base .... ou alors il y a un module qui a modifié ça Link to comment Share on other sites More sharing options...
Eolia Posted January 24, 2020 Share Posted January 24, 2020 Là on parle de la page produit (seule page où il devrait y avoir ces micro-données d'ailleurs) Si vous avez des modules tiers qui s'affichent (Produits associés, Déjà vus, etc...) leurs tpls sont souvent mal remplis de ce côté là et il faut supprimer toutes les éventuelles micro-données de ceux-ci) Link to comment Share on other sites More sharing options...
minimeca Posted January 24, 2020 Share Posted January 24, 2020 ahhh ok parce que effectivement dans la liste des erreurs que me donne l'outil google, il y a des champs qui n'apparaissent pas dans la fiche produit donc ils sont quelques part ailleurs typiquement le aggregate rating .... et pour savoir ce que ça veut dire .... bonjour, je cherche encore Link to comment Share on other sites More sharing options...
kokoon Posted January 24, 2020 Share Posted January 24, 2020 Oui il faut bien chercher dans les modules ayant un rapport avec les pages produits, j'ai eu l'erreur aussi. Par exemple modifier dans un tpl du module menu car il affiche les nouveaux produits. A lire sur ce sujet ▼ Link to comment Share on other sites More sharing options...
Eolia Posted January 24, 2020 Share Posted January 24, 2020 il y a 48 minutes, minimeca a dit : ahhh ok parce que effectivement dans la liste des erreurs que me donne l'outil google, il y a des champs qui n'apparaissent pas dans la fiche produit donc ils sont quelques part ailleurs typiquement le aggregate rating .... et pour savoir ce que ça veut dire .... bonjour, je cherche encore aggregate rating ce sont les avis produits. Expliqué plusieurs fois sur ce forum... Link to comment Share on other sites More sharing options...
Manu-41 Posted January 25, 2020 Share Posted January 25, 2020 Merci pour l'aide apporté sir le forum, ca aide bien 😉 Moi je n'ai pas le même code sur 1.6.1. J'ai des lignes en plus que j'ai modifié. <div class="breadcrumb clearfix" itemscope itemtype="http://shema.org/BreadcrumList"> <a class="home" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}" title="{l s='Return to Home'}"><i class="icon-home"></i></a> {if $page_name == "cms" && in_array($cms->id, array(10)) === true} {*ici la liste des pages CMS dédiée aux groupes*} <span class="navigation-pipe">{$navigationPipe}</span> <span class="navigation_page"><span itemprop="itemListElement" itemscope itemtype="http://shema.org/ListItem"><a itemprop="url" href="{$link->getPageLink('my-account', true)|escape:'html':'UTF-8'}">{l s='Mon compte'}</a> {/if} {if isset($path) AND $path} <span class="navigation-pipe"{if isset($category) && isset($category->id_category) && $category->id_category == (int)Configuration::get('PS_ROOT_CATEGORY')} style="display:none;"{/if}>{$navigationPipe|escape:'html':'UTF-8'}</span> {if $path|strpos:'span' !== false} <span class="navigation_page">{$path|@replace:'<a ': '<span itemprop="itemListElement" itemscope itemtype="http://shema.org/ListItem"><a itemprop="item" '|@replace:'data-gg="">': '><span itemprop="name">'|@replace:'</a>': '</span></a></span>'}</span> {else} {$path} {/if} {/if} </div> Link to comment Share on other sites More sharing options...
minimeca Posted January 26, 2020 Share Posted January 26, 2020 Le 24/01/2020 à 1:34 AM, Foovince a dit : Remplace le code source par celui ci : https://gist.githubusercontent.com/vinvin27/39d61ebe902170d8d92ef57ccd261e3f/raw/563f5b5c06bf8e09f2c91baa3798c48916b7b3e0/Breadcrumb%20%20Prestashop%201.6 comme indiqué dans mon article... et zou j'ai fais comme tu as dit .... alors je n'ai plus d'erreur, mais ça merdouille au niveau de l'affichage sur les fiches produits le prix apparaît 2 fois ..... pas top Link to comment Share on other sites More sharing options...
dylan1252 Posted February 8, 2020 Share Posted February 8, 2020 Bonjour, Qui peut me dire comment modifier svp: <!-- Breadcrumb --> {if isset($smarty.capture.path)}{assign var='path' value=$smarty.capture.path}{/if} <div class="breadcrumb"> <a class="home" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}" title="{l s='Return to Home'}"><i class="fa fa-home"></i></a> {if isset($path) AND $path} <span class="navigation-pipe"{if isset($category) && isset($category->id_category) && $category->id_category == (int)Configuration::get('PS_ROOT_CATEGORY')} style="display:none;"{/if}>{$navigationPipe|escape:'html':'UTF-8'}</span> {if $path|strpos:'span' !== false} <span class="navigation_page">{$path|@replace:'<a ': '<span itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a itemprop="url" '|@replace:'data-gg="">': '><span itemprop="title">'|@replace:'</a>': '</span></a></span>'}</span> {else} {$path} {/if} {/if} {if isset($smarty.get.search_query) && isset($smarty.get.results) && $smarty.get.results > 1 && isset($smarty.server.HTTP_REFERER)} <div style="margin-top:15px;"> {capture}{if isset($smarty.get.HTTP_REFERER) && $smarty.get.HTTP_REFERER}{$smarty.get.HTTP_REFERER}{elseif isset($smarty.server.HTTP_REFERER) && $smarty.server.HTTP_REFERER}{$smarty.server.HTTP_REFERER}{/if}{/capture} <a href="{$smarty.capture.default|escape:'html':'UTF-8'|secureReferrer|regex_replace:'/[\?|&]content_only=1/':''}" name="back"> <i class="fa fa-chevron-left left"></i> {l s='Back to Search results for "%s" (%d other results)' sprintf=[$smarty.get.search_query,$smarty.get.results]} </a> </div> {/if} </div> <!-- /Breadcrumb --> Merci par avance Link to comment Share on other sites More sharing options...
julianbaros Posted May 10, 2021 Share Posted May 10, 2021 (edited) Bonjour, J'ai bien fait toutes les modifs précédentes dans mon fichier breadcrumb.tpl, ça fonctionne nickel sauf pour mes catégories de niveau 2 sous accueil. En effet, quand je suis dans ma catégorie sous Accueil, j'ai un affichage comme si j'avais une catégorie vide avant ma catégorie de niveau 2 (Cf image jointe). Comment est-ce que je peux faire pour régler ce problème ? Sinon vous pouvez voir sur : https://bit.ly/3uC18wK Espérant que quelqu'un puisse m'aider :), d'avance merci Voici le code de mon fichier Breadcrumb.tpl : <!-- Breadcrumb --> {if isset($smarty.capture.path)}{assign var='path' value=$smarty.capture.path}{/if} {if !empty($path)} {* Extract bradcrumb links from anchors *} {$matchCount = preg_match_all('/<a.+?href="(.+?)"[^>]*>([^<]*)<\/a>/', $path, $matches)} {$breadcrumbs = []} {for $i=0; $i<$matchCount; $i++} {$breadcrumbs[] = ['url' => $matches[1][$i], 'title' => $matches[2][$i]]} {/for} {* Extract the last breadcrumb which is not link, it's plain text or text inside span *} {$match = preg_match('/>([^<]+)(?:<\/\w+>\s*)?$/', $path, $matches)} {if !empty($matches[1])} {$breadcrumbs[] = ['url' => '', 'title' => $matches[1]]} {elseif !$match && !$matchCount} {$breadcrumbs[] = ['url' => '', 'title' => $path]} {/if} {/if} <div class="breadcrumb clearfix"> <div class="container"> <div class="breadcrumb-wrapper"> <ol class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList"> <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"> <a href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}" title="{l s='Home Page'}" itemprop="item"> <span itemprop="name"><i class="icon-home"></i></span> </a> <meta itemprop="position" content="1" /> </li> {if !empty($breadcrumbs)} {foreach from=$breadcrumbs item=breadcrumb name=crumbs} <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"> {if !empty($breadcrumb.url)} <a href="{$breadcrumb.url}" itemprop="item"> <span itemprop="name">{$breadcrumb.title}</span> </a> {else} <span itemprop="name">{$breadcrumb.title}</span> {/if} <meta itemprop="position" content="{($smarty.foreach.crumbs.iteration|intval + 1)}" /> </li> {/foreach} {/if} </ol> </div> {if isset($smarty.get.search_query) && isset($smarty.get.results) && $smarty.get.results > 1 && isset($smarty.server.HTTP_REFERER)} <div class="pull-right"> <strong> <nav> <ul class="pager"> <li class="previous"> {capture}{if isset($smarty.get.HTTP_REFERER) && $smarty.get.HTTP_REFERER}{$smarty.get.HTTP_REFERER}{elseif isset($smarty.server.HTTP_REFERER) && $smarty.server.HTTP_REFERER}{$smarty.server.HTTP_REFERER}{/if}{/capture} <a href="{$smarty.capture.default|escape:'html':'UTF-8'|secureReferrer|regex_replace:'/[\?|&]content_only=1/':''}" name="back"> <span>← {l s='Back to Search results for "%s" (%d other results)' sprintf=[$smarty.get.search_query,$smarty.get.results]}</span> </a> </li> </ul> </nav> </strong> </div> {/if} </div> </div> <!-- /Breadcrumb --> Edited May 10, 2021 by julianbaros (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now