Sn4tcHz Posted September 13, 2013 Share Posted September 13, 2013 (edited) Bonjour à toutes et à tous. Je travaille sous Prestashop 1.5.3.1, thème prestashop Mon problème est le suivant : J'ai modifié mon bloc contact info en y ajoutant un lien qui pointait vers la page du formulaire de contact prestashop. Tout marchait correctement. Mais depuis hier, en cliquant sur ce lien, j'obtiens une erreur 404 "Page introuvable". L'url qui s'affiche est http://wwww.nom-de-ma-boutique/fr/contactez-nous J'ai donc cherché sur mon serveur la page du formulaire de contact prestashop. Impossible de la trouver ! Je suis absolument certain de ne rien avoir supprimé sur mon serveur, et je n'ai pas renommer cette page sauvagement. Si je pouvais trouver le dossier où se trouve cette page et sa dénomination exacte, je pourrais comparer avec le lien que j'ai inséré dans mon fichier blockcontactinfos.tpl L'un ou l'une d'entre-vous aurait-il l'extrême gentillesse de me dire dans quel dossier précisément on peux trouver cette page du formulaire de contact (dossier et nom du fichier) ? S'il s'avère que je l'ai effacé par erreur du dossier de mon thème (ce dont je doute fortement, mais sait-on jamais...), peut-être pourrais la récupérer depuis le dossier du thème par défaut et la remettre dans le bon dossier de mon thème prestashop ? J'ai eu beau faire des recherches sur le forum, je n'ai malheureusement rien trouvé sur ce point précis. Question subsidiaire : dans quel(s) dossier(s) se trouve les pages cms que l'on crée ? D'avance un immense merci pour toutes les réponses à venir. Très cordialement vôtre Snatchz Edited September 13, 2013 by Sn4tcHz (see edit history) Link to comment Share on other sites More sharing options...
ChDUP Posted September 13, 2013 Share Posted September 13, 2013 Le template de la page contact se trouve dans thotheme/contact-form.tpl Mais ce n'est pas ce que tu cherches apparemment. Chaque page appelée par un navigateur ne correspond pas obligatoirement à un fichier En fait dans Prestashop on appelle toujours l'index.php et c'est un controller qui va se charger de l'affichage qui doit être fait dans cette page peut etre as tu desactivé la redirection d'URLs essaie d'atteindre la page suivante : www.tonsite.com/index.php?controller=contact Link to comment Share on other sites More sharing options...
Sn4tcHz Posted September 13, 2013 Author Share Posted September 13, 2013 (edited) Bonjour ChDUP Merci infiniment d'avoir pris le temps de me répondre. Effectivement, en insérant le lien que tu me donnes, j'arrive sur une page de débug : [Debug] This page has movedPlease use the following URL instead: http://www.maboutique.com/contactez-nous Et là, MIRACLE, je retombe sur mon formulaire pile poil tout bien ! Par contre si je copie/colle ce lien dans mon .tpl, même erreur. L'erreur persiste également si je modifie le lien dans mon .tpl par celui que tu m'as conseillé. EDIT : je viens de percuter sur un truc : l'url de la page 404 est http://maboutique.com/fr/contactez-nous Alors que l'adresse avec laquelle j'arrive correctement sur le formulaire est : http://maboutique.com/contactez-nous. Il n'y a pas le /fr J'y suis presque... Une idée sur le fichier à modifier ? J'ai modifié le blockcontactinfos.tpl en insérant l'adresse sans le /fr, mais rien n'y fait. Quand je clique sur le lien, l'url appelé contient à nouveau le /fr. J'ai essayé le index.php du block contact infos, puis celui du dossier "modules", mais je ne sais pas quelle modif faire... Une idée pour les derniers mètres ? Snatchz Edited September 13, 2013 by Sn4tcHz (see edit history) Link to comment Share on other sites More sharing options...
ChDUP Posted September 13, 2013 Share Posted September 13, 2013 Il vaut mieux que tu laisse Presta gerer le lien de la page contact plutot que de l'imposer en dur. Theoriquement, ça devrait être <a href="{$link->getPageLink($contact_url, true)}">Contact</a> Link to comment Share on other sites More sharing options...
Sn4tcHz Posted September 13, 2013 Author Share Posted September 13, 2013 (edited) Rien à faire ! Je viens de modifier le fichier blockcontactinfos.tpl comme ceci : <!-- MODULE Block contact infos --><div id="block_contact_infos"> <h4 class="title_block">{l s='Contact us' mod='blockcontactinfos'}</h4> <ul> {if $blockcontactinfos_company != ''}<li><strong>{$blockcontactinfos_company|escape:'htmlall':'UTF-8'}</strong></li>{/if} {if $blockcontactinfos_address != ''}<li><pre>{$blockcontactinfos_address|escape:'htmlall':'UTF-8'}</pre></li>{/if} {if $blockcontactinfos_phone != ''}<li>{l s='Tel:' mod='blockcontactinfos'} {$blockcontactinfos_phone|escape:'htmlall':'UTF-8'}</li>{/if} {if $blockcontactinfos_email != ''}<li>{<a href="{$link->getPageLink($contact_url, true)}">Contact</a>}</li>{/if} </ul></div><!-- /MODULE Block contact infos --> Mais ça ne marche pas. Toujours la page d'erreur avec le /fr dans l'url... Est-ce que ce ne serait pas la fonction <a href= qui génère le /fr ? C'est à se cogner la tête sur l'écran... Edited September 13, 2013 by Sn4tcHz (see edit history) Link to comment Share on other sites More sharing options...
ChDUP Posted September 13, 2013 Share Posted September 13, 2013 Est-ce que ce ne serait pas la fonction <a href= qui génère le /fr ? Non. ton site est multilangue ? Link to comment Share on other sites More sharing options...
Sn4tcHz Posted September 13, 2013 Author Share Posted September 13, 2013 (edited) Non non, juste en français... Je ne comprends pas pourquoi forcer le lien dans le .tpl ne marche pas... EDIT : RESOLU ! Ce n'était pas le fichier blockcontactinfos.tpl qu'il fallait modifier, mais blockcontact.tpl De cette manière : <div id="contact_block" class="block"> <p class="title_block">{l s='Contact us' mod='blockcontact'}</p> <div class="block_content clearfix"> <p>{l s='Our hotline is available 24/7' mod='blockcontact'}</p> {if $telnumber != ''}<p class="tel"><span class="label">{l s='Phone:' mod='blockcontact'}</span>{$telnumber|escape:'htmlall':'UTF-8'}</p>{/if} {if $email != ''}<a href="http://monsite.com/contactez-nous">{l s='Contact our hotline' mod='blockcontact'}</a>{/if} </div></div> Problème réglé. Merci infiniment pour ton aide. Je marque le topic en RESOLU. Snatchz Edited September 13, 2013 by Sn4tcHz (see edit history) Link to comment Share on other sites More sharing options...
ChDUP Posted September 14, 2013 Share Posted September 14, 2013 tu as forcé le lien avec quoi ? Ce n'est pas normal que tu aies un /fr si tu n'es pas en multilangue Verifie ça Link to comment Share on other sites More sharing options...
Sn4tcHz Posted September 14, 2013 Author Share Posted September 14, 2013 (edited) tu as forcé le lien avec quoi ? Ce n'est pas normal que tu aies un /fr si tu n'es pas en multilangue Verifie ça J'ai vérifié. Le module de traduction est désactivé dans mon BO. Auparavant j'avais visiblement mis un /fr dans l'url : {if $email != ''}<a href="http://monsite.com/fr/contactez-nous">{l s='Contact our hotline' Quand j'avais rentré cette url, le module de traduction était activé. Je l'avais désactivé bien après sans checker à ce moment là le lien qui a posé le problème. Le souci est en fait peut-être venu de là ? La j'ai enlevé le /fr et ça marche. Mais après ton post j'avais fait cette modif dans blockcontactinfos.tpl, et pas dans blockcontact.tpl, c'est pour ça que ça ne marchait pas... Edited September 14, 2013 by Sn4tcHz (see edit history) Link to comment Share on other sites More sharing options...
ChDUP Posted September 14, 2013 Share Posted September 14, 2013 tu as forcé le lien avec quoi ? Link to comment Share on other sites More sharing options...
Sn4tcHz Posted September 14, 2013 Author Share Posted September 14, 2013 {if $email != ''}<a href="http://monsite.com/contactez-nous">{l s='Contact our hotline' mod='blockcontact'}</a>{/if} dans blockcontact.tpl Link to comment Share on other sites More sharing options...
ChDUP Posted September 14, 2013 Share Posted September 14, 2013 ah ok je comprend mieux la car depuis la 1.5 tu ne dois pas avoir de /fr dans les URLs si tu n'es pas en multilangues. Il serait plus propre de mettre un {$link->getPageLink($contact_url, true)} à la place de l'URL de ton lien Link to comment Share on other sites More sharing options...
Sn4tcHz Posted September 14, 2013 Author Share Posted September 14, 2013 ah ok je comprend mieux la car depuis la 1.5 tu ne dois pas avoir de /fr dans les URLs si tu n'es pas en multilangues. Il serait plus propre de mettre un {$link->getPageLink($contact_url, true)} à la place de l'URL de ton lien Je viens de remplacer par ton code. Mais dans le bon .tpl cette fois ^^ ;) Ça marche impec apparament !!! Merci infiniment pour tes conseils et ton suivi 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