WooFrance Dépannage et support WordPress WooCommerce › Forums › Forum de Support WooCommerce › Mon fil d'ariane n'affiche pas la catégorie principale
- Ce sujet contient 12 réponses, 2 participants et a été mis à jour pour la dernière fois par Pierre, le il y a 7 années et 6 mois.
-
AuteurMessages
-
27 avril 2017 à 9 h 53 min #3274
Bonjour à tous,
Je suis en train de configurer un site e-commerce avec le thème Savoy. Le problème, comme c’est indiqué dans le titre, est que le fil d’ariane n’affiche pas la catégorie définie comme « Principale », même si on passe par celle ci dans la navigation.
J’ai envoyé un message au support du thème, voila leur réponse : « Il semble que WooCommerce affiche les catégories relatives les plus proches au lieu de la catégorie principale dans le fil d’ariane. »
Est-ce que vous auriez plus d’informations la dessus ? Une solution ?
Merci d’avance,
10 mai 2017 à 8 h 22 min #339510 mai 2017 à 9 h 20 min #3397Salut,
Si pour leur support ça vient de Woocommerce logiquement tu dois avoir le même résultat avec un thème de base, as-tu essayé ?
Content(e) de mon aide ? Vous pouvez m'offrir un café ! 🙂
Avant d'appeler à l'aide: Dépannage Woocommerce
Vous manquez de trafic ? Payez le prix d'un seul backlink et obtenez-en beaucoup plus !
10 mai 2017 à 12 h 42 min #339810 mai 2017 à 13 h 03 min #3399Ne te réjouis pas trop vite je n’ai pas la solution. Je peux seulement réfléchir à quelques pistes.
As-tu modifié des fichiers templates ou créé un thème enfant ?
Content(e) de mon aide ? Vous pouvez m'offrir un café ! 🙂
Avant d'appeler à l'aide: Dépannage Woocommerce
Vous manquez de trafic ? Payez le prix d'un seul backlink et obtenez-en beaucoup plus !
10 mai 2017 à 13 h 18 min #3400Je suis optimiste de nature ^^
Je n’ai pas modifié de template et le développeur qui a créé la boutique n’avais pas fait de thème enfant :/
Je pensais que le problème venait peut être de la requête qui va chercher les liens parents, il n’y a peut être pas de condition sur le fait que la catégorie soit celle principale… Mais je n’ai aucune idée d’où trouver cette requête.10 mai 2017 à 13 h 37 min #3403Vérifie quand même si le développeur n’avait pas modifié le fichier functions.php du thème en ajoutant un filtre « breadcrumb ».
Sinon je viens de penser que certains plugins SEO permettent d’agir sur le fil d’ariane (Yoast, WordPress SEO, etc..) A vérifier si un tel plugin est installé.
Content(e) de mon aide ? Vous pouvez m'offrir un café ! 🙂
Avant d'appeler à l'aide: Dépannage Woocommerce
Vous manquez de trafic ? Payez le prix d'un seul backlink et obtenez-en beaucoup plus !
10 mai 2017 à 16 h 48 min #3409J’avais déjà vérifié le function.php, il n’y a rien dedans… Par contre je n’avais pas du tout pensé à Yoast, je l’ai désactivé pour voir mais ça n’a rien changé.
Le code qui génère le fil d’ariane est le suivant :
woocommerce_breadcrumb( array(
'delimiter' => '/',
'wrap_before' => '<nav id="nm-breadcrumb" class="woocommerce-breadcrumb" ' . ( is_single() ? 'itemprop="breadcrumb"' : '' ) . '>',
'wrap_after' => '</nav>',
'home' => ( $shop_on_homepage ) ? _x( 'Shop', 'breadcrumb', 'nm-framework' ) : _x( 'Home', 'breadcrumb', 'woocommerce' )
) );Donc visiblement il s’agirait bien d’un problème venant de la fonction Woocommerce. J’ai cherché du côté de la classe woocommerce/includes/class-wc-breadcrumb.php et je suis tombé sur cette fonction :
/**
* Single post trail.
*
* @param int $post_id
* @param string $permalink
*/
private function add_crumbs_single( $post_id = 0, $permalink = '' ) {
if ( ! $post_id ) {
global $post;
} else {
$post = get_post( $post_id );
}
if ( 'product' === get_post_type( $post ) ) {
$this->prepend_shop_page();
if ( $terms = wc_get_product_terms( $post->ID, 'product_cat', array( 'orderby' => 'parent', 'order' => 'DESC' ) ) ) {
$main_term = apply_filters( 'woocommerce_breadcrumb_main_term', $terms[0], $terms );
$this->term_ancestors( $main_term->term_id, 'product_cat' );
$this->add_crumb( $main_term->name, get_term_link( $main_term ) );
}
} elseif ( 'post' != get_post_type( $post ) ) {
$post_type = get_post_type_object( get_post_type( $post ) );
$this->add_crumb( $post_type->labels->singular_name, get_post_type_archive_link( get_post_type( $post ) ) );
} else {
$cat = current( get_the_category( $post ) );
if ( $cat ) {
$this->term_ancestors( $cat->term_id, 'post_category' );
$this->add_crumb( $cat->name, get_term_link( $cat ) );
}
}
$this->add_crumb( get_the_title( $post ), $permalink );
}
J’ai mis en gras ce qui me parait interessant, le raisonnement me parait bon du coup je ne comprend vraiment pas ! J’ai aussi que Yoast enregistrait des clés concernant les catégories dans la table postmeta mais ça me sort bien l’ID de la catégorie principale…
Je suis totalement dans le flou la 😮
10 mai 2017 à 17 h 12 min #3410Après réflexion sur la ligne que j’ai mis en gras dans mon message précédent je me suis dit que finalement ça forçait à prendre le chemin le plus long. Du coup j’ai viré le
array( 'orderby' => 'parent', 'order' => 'DESC' )
Je ne suis pas sûr de mon coup mais dans mon cas ça fonctionne comme je le souhaite 😉
10 mai 2017 à 17 h 19 min #3411Bon là je suis largué, je n’ai pas ce fichier. Je suppose que c’est la version 3 de woocommerce et moi je n’ai pas encore fait la mise à jour. Mais dans le dossier include le fichier ne devrait pas avoir été modifié.
Peut-être que la doc te donnera de l’inspiration pour tenter une personnalisation 🙂
https://docs.woocommerce.com/document/customise-the-woocommerce-breadcrumb/
Content(e) de mon aide ? Vous pouvez m'offrir un café ! 🙂
Avant d'appeler à l'aide: Dépannage Woocommerce
Vous manquez de trafic ? Payez le prix d'un seul backlink et obtenez-en beaucoup plus !
10 mai 2017 à 18 h 07 min #341210 mai 2017 à 19 h 06 min #3413J’étais descendu un peu plus bas sur la page 🙂
« Useful if you want to change a number of the breadcrumb defaults. »C’est finalement le plus important !
Content(e) de mon aide ? Vous pouvez m'offrir un café ! 🙂
Avant d'appeler à l'aide: Dépannage Woocommerce
Vous manquez de trafic ? Payez le prix d'un seul backlink et obtenez-en beaucoup plus !
1 user thanked author for this post.
11 mai 2017 à 8 h 13 min #3414 -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.