Jump to content

lien interne avec titre selon la langue


Recommended Posts

Bonjour,

 

J'essaie de faire un lien (à vrai dire différents liens que je choisis) interne vers une page du cms mais que le titre qui s'affiche (et l'url) puisse s'adapter selon la langue dans laquelle je suis.

 

J'ai inséré ce code qui fonctionne mais qui m'affiche le titre que jai mis dans le code lorsque je voudrais quil m'affiche Livraison si je suis dans le footer en francais et delivery si je suis en anglais

<a href="{$link->getPageLink('cms.php?id_cms=1', true)}">{l s='Livraison'}</a> 

 

Idem pour des pages non cms comme meilleures ventes etc...

 

Jai cherché longtemps sur le forums et trouve pas, un coup de main?

 

merci

Link to comment
Share on other sites

salut

personne? :( c'est si compliqué que ça ?

Dans un premier temps il faut mettre la version anglaise

{1 s='Delivery'}

Ensuite tu vas dans ton BO /outils/traduction/front office, sélectionne français, tu devrais trouver une case vide en face de Delivery, mets Livraison et enregistre les modifications

Link to comment
Share on other sites

  • 2 weeks later...
salut Dans un premier temps il faut mettre la version anglaise
 {1 s='Delivery'} 

Ensuite tu vas dans ton BO /outils/traduction/front office, sélectionne français, tu devrais trouver une case vide en face de Delivery, mets Livraison et enregistre les modifications

 

Ok merci! vais essayer ! et pour l'url?Mon but est de faire un footer anglais et un français...

a moins que je fasse un include (ce que n'ai jamais fait sur presta) selon la langue avec

{$lang_iso}
? une suggestion?
Link to comment
Share on other sites

Jai enfin compris que l'url reste la même vu que c'est une page cms.

Par contre si dans le footer je veux simplement écrire une phrase qui change selon la langue comment faire?

Je peux utiliser un module genre free block qui va me le permettre, mais si à côté de ce texte je veux avoir justement un lien vers une page du cms, le module n'arrive pas à interpréter ces liens :(

 

Avez vous une solution?

1) si je place mes liens dans le footer.tpl ils fonctionnent mais mes textes restent en une langue. Dans ce cas là il faudrait que j'arrive à savoir comment rendre ces textes multilingues.

 

2) si je place le module free block dans le footer je peux écrire mes textes dans les 2 langues par contre vu que les liens vers les cms (multinlingues) ne sont pas dans le tpl ils ne sont pas interprétés. Une solution serait de savoir comment rendre ces liens valables...

 

QQn peut m'aider?

Link to comment
Share on other sites

  • 2 weeks later...

Pour la solution 1, suivez le message plus haut

{1 s='mon texte'}

,

puis dans la traduction, traduisez le texte dans toutes les langues de votre boutique.

 

Si je met comme indiqué plus haut {1 s='Salut les lapins'} dans mon tpl (footer par ex) eh bien rien ne s'affiche au contraire tout ce quil y a autour ne s'affiche plus non plus....

Peut être ça fonctionne à l'intérieur d'un lien mais pas pour du texte libre

Link to comment
Share on other sites

Bonjour,

 

Si vous ajoutez ce lien dans un module, il faut renseigner le nom du module dans la variable smarty également...

 

{l s='your link' mod='blockcms'}

 

En bref :

 

- Tout texte et liens passent par une variable smarty pour garder l'outil traduction : {l s='.....'}

- Prenez l'habitude de mettre vos textes en Anglais (Tout Prestashop est ainsi construit)...

- N'oubliez pas de renseigner le nom du module si lien dans un tpl module.

 

edit par rapport aux messages ci-dessus :

{1 s='mon texte'} ---> c'est la lettre l et non le chiffre 1 qu'il faut mettre (d'ou votre footer qui disparait!!!)

 

V++

 

Atch

Link to comment
Share on other sites

  • 4 months later...

Bonjour,

 

Je pose une question car ça fait 5 heures que je cherche et impossible de trouver la solution.

Voila :

 

J'ai modifié le nom d'une page du CMS "Rights of withdrawal" en "Mensurations - Tailles".

J'ai traduit en anglais dans le Back-Office par "Measurements - Sizes".

J'ai modifié la page.

 

Maintenant j'ai créé un lien dans le footer :

"{$base_dir}cms.php?id_cms=7">{l s='Measurements - Sizes' mod='blockcms'}</a>

 

Lorsque je passe de français à anglais le lien n'est pas traduit et reste affiché à "Measurements - Sizes".

 

J'ai fait un test avec un lien :

"{$base_dir}cms.php?id_cms=9" title="---------">{l s='Contact us' mod='blockcms'}</a>

 

Là, pas de problèmes, la traduction fonctionne et j'ai également trouvé dans le fichier "fr.php" dans : matrice/modules/blockcms/fr.php la référence où modifier la traduction...

 

"global $_MODULE;

$_MODULE = array();

$_MODULE['<{blockcms}matrice>blockcms_34c869c542dee932ef8cd96d2f91cae6'] = 'Nos magasins';

$_MODULE['<{blockcms}matrice>blockcms_d1aa22a3126f04664e0fe3f598994014'] = 'Promotions';

$_MODULE['<{blockcms}matrice>blockcms_9ff0635f5737513b1a6f559ac2bff745'] = 'Nouveaux produits';

$_MODULE['<{blockcms}matrice>blockcms_3cb29f0ccc5fd220a97df89dafe46290'] = 'Meilleures ventes';

$_MODULE['<{blockcms}matrice>blockcms_02d4482d332e1aef3437cd61c9bcc624'] = 'HELLO-FR';

$_MODULE['<{blockcms}matrice>blockcms_7a52e36bf4a1caa031c75a742fb9927a'] = 'Propulsé par';

 

Malheureusement JE NE COMPRENDS PAS comment retrouver l'identifiant de la page CMS "Rights of withdrawal" que j'ai modifié pour pouvoir créer une nouvelle ligne et faire la traduction...

 

Y a-t-il une autre façons de faire ???

 

Quelqu'un peut-il m'aider ?

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...