Jump to content

Menu haut > Lien de menu url fausse dans page produit


Recommended Posts

Bonjour,

 

Je viens de me rendre compte que lorsque j'ajoute un lien de menu dans le menu heut horizontal
ex. : nouveautes (dans le champ de saisie)

 

Lorsque je suis sur :

http://maboutique/fr/  le lien est bien -> http://maboutique/fr/nouveautes OK

mais lorsque je suis sur :

http://maboutique/fr/monProduit le devient lien -> http://maboutique/fr/monProduit/nouveau KO

au lieu de à nouveau :
http://maboutique/fr/nouveautes

 

Quelqu'un à t(il déjà rencontré ce problème ?

 

Merci

Link to comment
Share on other sites

  • 1 month later...

Bonjour, 

 

Tu as trouvé la solution?

J'ai (presque) le même problème... v1.5.6

 

Chez moi c'est sur les pages produits quand je rentre un lien  vers un autre produit/catégorie/cms... directement dans la description.

Si le lien est en dur, ben pas de pb (logique...) sauf que c'est pas propre.

Si je rentre un lien du style:

<a href="{$link->getCategoryLink('1')}" title="">...</a>

là il me sort un lien domaine.com/catégorie-du-produit-actuel/{$link->getCategoryLink('1')}

qui bien sur ne mène nulle part...

 

Apache multiview activé/désactivé ne change rien...

 

Sur mon menu top pas de problème par contre, mais mon thème est basé sur foundation avec le module responsivelinks. Par contre les liens sont écrit de la même manière.

 

C'est le module menu top d'origine que tu utilises? histoire de chercher les points communs...

Quelle version de PS? 

 

Si quelqu'un a une idée, une piste ou la réponse... bienvenue!

 

Je suis un newbie, si je fais une erreur ou dis une conner... , merci de ne pas m'assassiner 

Link to comment
Share on other sites

Oups!

 

Bon pour moi c'est tout vu, je cherche à mettre des variables dans du contenu rte, pas possible (ou difficilement...) Voir ici

 

Donc rien à voir avec ton problème... Mea culpa.

 

Mais aller, un petit coup de main quand même: as tu modifié ton module et comment sont écrits tes liens sur le .tpl?

Link to comment
Share on other sites

Salut !

 

En fait ce problème dans le bloc advertising par exemple.

Le lien est écrit de la sorte <a href="{$adv_link}"...

Mais c'est le module d'origine...

et dans le php $this->adv_link = htmlentities(Configuration::get('BLOCKADVERT_LINK'), ENT_QUOTES, 'UTF-8');

et en back office en adresse de lien : contactez-nous

 

Donc quand je suis sur la home et que je clique sur mon bloc publicité j'ai bien :

http://www.monsite.com/fr/contactez-nous

et quand je suis dans une page produit et que je clique sur mon bloc publicité j'ai :

http://www.monsite.com/fr/macategorie/contactez-nous

 

Dans seo et urls

pour Route vers les pages CMSj'ai

content/{id}-{rewrite}

 

pour Route vers les catégories CMS j'ai

content/category/{id}-{rewrite}

 

Mais ce sont les configs par défaut, ça devrait fonctionner...

Link to comment
Share on other sites

Je suis un peu long à répondre...

 

Est-ce que tu peux regarder côté DB: dans PS_configuration  la ligne name = BLOCKADVERT_LINK . Quelle est la valeur (type de lien)?

 

Chez moi ce lien est en dur, genre http://mondomaine.com/content/1-nomcms 

En théorie pas d'erreur possible... (je peux difficilement tester, le module n'est plus installé chez moi, cette ligne est une relique!)

 

Si je suis le raisonnement du post trouvé plus haut, le lien que tu rentres dans le module ne devrait pas être rentré sous une autre forme qu'un lien en dur, puisque au moment de la génération de la page, il sortira tel que tu l'as rentré.

 

ex: si tu es sur une page produit  /content/1-nomcms te redirigera vers /macatégorieproduit/content/1-nomcms

Ca a l'air d'être une explication au problème, mais je fais peut-être une erreur...

Link to comment
Share on other sites

Pas de problème !

 

J'ai regardé dans la DB à BLOCKADVERT_LINK j'ai "contactez-nous"

 

Je ne peux pas mettre de lien dur car je suis en 2 langues même si la page n'est pas traduite pour l'instant.

 

Mais en fait j'ai le même problème avec le menu haut lorsque je mets une sous catégorie.

Par contre si je mets la catégorie parente ça fonctionne dans toute les pages.

ça apparait vraiment que dans les pages produits.

Link to comment
Share on other sites

Bon une question déjà: si ton lien est "contactez-nous" c'est que tu fais un lien vers le français uniquement non?

Une idée serait peut -être de viser contact-form.php, mais le problème serait le même pour ce qui est de la catégorie qui se met en travers...

Donc http://mondomaine/contact-form.php te dirige au bon endroit quelle que soit la page sur laquelle tu te trouves et la langue que tu utilises.

 

Pour les catégories dans le menu du haut, si ma mémoire est bonne, tu sélectionnes les catégories ou pages à afficher dans le BO du module. Normalement, c'est presta qui génère l'URL tout seul (voir comment dans /classes/Link.php).

Si c'est bien ça, une erreur me parait étrange.

 

Je vais être un peu court pour t'aider plus parce que je n'utilise aucun des deux modules en question... je ne les ai pas non plus gardés sur mon site de dev.

Puis php, je commence à voir comment ça fonctionne sans être capable d'y toucher...

 

Comme ce sont des modules qui ne bougent pas ou quasiment jamais et visibles sur toutes les pages, ils sont en dur sur les tpl chez moi, et les liens sont écrits comme ça.

 

Bonne soirée

Edited by pierre f (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

Bon j'ai trouvé une solution mais je pense qu'elle est de contournement :

Dans mon blockadvertising.tpl

au lieu de :

<a href="{$adv_link}" title="{$adv_title}"><img src="{$image}" alt="{$adv_title}" title="{$adv_title}" width="155"  height="163" /></a>

J'ai mis :

<a href="{$link->getPageLink({$adv_link}, true)}" title="{$adv_title}"><img src="{$image}" alt="{$adv_title}" title="{$adv_title}" width="219"  height="145" /></a>

Je pense que je retrouverais le problème avec le menu haut mais je verrais plus tard.

 

Ceci dit j'ai du mal à comprendre comment prestashop construit les urls

Dans blockadvertising.php mes variables étaient bonnes et dés que le < a href apparait prestashop me rajoutait la racine du catalogue.

quel est la mécanique... je mettrai en résolu plus tard, j'attends de voir si l'on me répond à cette dernière question.
 

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...