misterpink Posted December 14, 2012 Share Posted December 14, 2012 (edited) Bonjour, je souhaiterai avoir une page cms avant l'index.php sur prestashop 1.5.2, j'ai vu quelques topics la dessus mais sur d'ancienne versions de prestashop et cela ne fonctionne pas sur la dernière version de prestashop... quelqu'un aurai t il une piste??? merci d'avance Edited December 15, 2012 by misterpink (see edit history) Link to comment Share on other sites More sharing options...
tarte-au-sucre Posted December 14, 2012 Share Posted December 14, 2012 Comment ça, "avant l'index.php" ? sur 1.5.2, cela fonctionne par un dispatcher, ce qui signifie que tout passe par index.php qui affiche en fonction du paramètre controller. Si je reformule, vous souhaitez afficher un CMS sur la homepage du site, c'est bien cela ? Link to comment Share on other sites More sharing options...
misterpink Posted December 14, 2012 Author Share Posted December 14, 2012 Merci de votre reponse, en faite je souhaiterai que avant que l'on arrive sur la homepage il y est d'abord une page cms qui s'affiche car je veux creer une page avec un slider avant la homepage, j'ai essayé en créant une page index.html, ca marche mais sa plante l'ajax du panier sur tout mon site, donc du coup je me suis dit que le mieux serai de créer une page cms qui s’appellerait par exemple accueil... j’espère que vous comprenez ce que je veux faire... Link to comment Share on other sites More sharing options...
tarte-au-sucre Posted December 14, 2012 Share Posted December 14, 2012 (edited) Que ça plante l'ajax, c'est normal, l'index.html ne fait pas "partie" de Prestashop, donc il ne peut pas interagir avec ! Pourquoi ne pas, simplement, réorganiser les hook ? Et coder dans le thème et les fichiers .tpl ? Edited December 14, 2012 by tarte-au-sucre (see edit history) Link to comment Share on other sites More sharing options...
misterpink Posted December 14, 2012 Author Share Posted December 14, 2012 Heu la je doit dire que je comprends pas ce que vous voulez dire, je suis intégrateur et pas développeur, mais je me soigne ;-) je connait un peu la gestion des hook mais je ne comprends ce que vous voulez dire par "réorganiser les hook"... merci en tout cas de vous penchez sur mon problème... Link to comment Share on other sites More sharing options...
tarte-au-sucre Posted December 14, 2012 Share Posted December 14, 2012 (edited) J'imagine toujours le développement Prestashop sans passer par la méthode "sale" : intervenir dans le code source mais préférer passer par la surcharge (override) qui est plus adaptée au CMS. à Priori, ce que vous souhaitez faire, si vous voulez que ce soit pérenne (évoluable avec les mises à jours et non bloquant) c'est développer un module, qui vienne s'intégrer dans la page d'accueil. Cette page d'accueil deviendra ainsi ce fameux CMS qu'elle souhaite afficher. Il faudra ensuite que ce module recrée une seconde page qui reprendra la page d'accueil actuelle. C'est ce que j'entendais par "réorganiser les hooks" Disons que c'est la solution la plus propre que je vois. Il y en a probablement d'autres ! Edited December 14, 2012 by tarte-au-sucre (see edit history) Link to comment Share on other sites More sharing options...
tarte-au-sucre Posted December 14, 2012 Share Posted December 14, 2012 Dans ce cas, je ne saurais que vous conseiller ce tutoriel qui permet d'embrayer (attention il y a quelques erreurs) http://www.prestarocket.com/blog/creer-module-mvc-prestashop-1-5/ et la doc prestashop http://doc.prestashop.com/dashboard.action 1 Link to comment Share on other sites More sharing options...
misterpink Posted December 14, 2012 Author Share Posted December 14, 2012 sinon j'ai creer un fichier accueil.php avec dedans <?php require(dirname(__FILE__).'/config/config.inc.php'); Tools::displayFileAsDeprecated(); Tools::redirect('index.php?controller=accueil'.($_REQUEST ? '&'.http_build_query($_REQUEST, '', '&') : ''), __PS_BASE_URI__, null, 'HTTP/1.1 301 Moved Permanently'); et ensuite j'ai creer un fichier AccueilController.php dans controllers/front/ avec dedans: class AccueilControllerCore extends FrontController { public $php_self = 'accueil'; public function initContent() { parent::initContent(); $this->context->smarty->assign('content_only', 0); $this->setTemplate(_PS_THEME_DIR_.'accueil.tpl'); } public function setMedia() { parent::setMedia(); if ($this->assignCase == 1) $this->addJS(_THEME_JS_DIR_.'accueil.js'); $this->addCSS(_THEME_CSS_DIR_.'accueil.css'); } /** * Assign template vars related to page content * @see FrontController::initContent() */ } et ensuite un fichier accueil.tpl ca fonctionne, si je met mon nom de domaine/accueil.php ca m'ouvre bien mon accueil.tpl mais mon soucis maintenant c'est que accueil.php soit appeller avant index.php.... pour la création d'un module ça me semble au dessus de mes capacités... Link to comment Share on other sites More sharing options...
misterpink Posted December 14, 2012 Author Share Posted December 14, 2012 du coup j'ai reussi a l'affichée avant l'accueil grace au htaccess en mettant dedans DirectoryIndex accueil.php index.php bon maintenant il me manque plus que la reecriture d'url et la j'avoue que je suis un peu paumé... Link to comment Share on other sites More sharing options...
jolvil Posted December 21, 2012 Share Posted December 21, 2012 Il y a un module mais développé pour PS1.3 http://www.prestashop.com/forums/topic/71881-module-page-avant-accueil/ Link to comment Share on other sites More sharing options...
misterpink Posted December 21, 2012 Author Share Posted December 21, 2012 Merci Jolvil, je l'ai essayé ce module mais il fonctionne pas sur 1.5.2 et je n'ai pas le temps ni peut être pas les capacités techniques pour l'adapter, mais bon ma solution fonctionne donc je reste comme ça, j'ai juste un soucis avec ma réécriture d'url et les cookies, j'ai créé un topic spécifique pour ça... http://www.prestashop.com/forums/topic/210805-reecriture-durl-sur-une-page-accueilphp-que-jai-creee/ Link to comment Share on other sites More sharing options...
aghilas Posted December 21, 2012 Share Posted December 21, 2012 intéressant ! Merci Link to comment Share on other sites More sharing options...
Pyssou Posted May 3, 2013 Share Posted May 3, 2013 Bonjour à tous, J'ai utilisé la methode proposée par misterpink, puis j'ai modifié dans .htacces en ajoutant DirectoryIndex accueil.php index.php Ca marche sauf que dans ma page accueil.tpl il y a un lien qui va vers index.php?controller=index ça me revient sur la page accueil.php toujours. Merci pour vos réponses. Link to comment Share on other sites More sharing options...
Pyssou Posted May 3, 2013 Share Posted May 3, 2013 Re J'ai réussi à faire ma page accueil, j'explique pour ceux qui ont en besoin: * j'ai créer une page index.html puis je l'ai mis à la racine de mon site. Ce fichier passe avant index.php * je suis allé dans le fichier header.tpl du theme, j'ai modifié la ligne 47 (prestashop 1.5) var baseDir = '{$content_dir}'; par var baseDir = '{$content_dir}index.php'; Et ca marche Link to comment Share on other sites More sharing options...
Olivia coum Posted May 26, 2013 Share Posted May 26, 2013 Bonjour à tous, Je suis entrain de créer mon site internet comme vous avec mes dix doigts ... Je me demandais si avec la méthode de MISTERPINK il était possible de créer une animation en flash avant l'ouverture du site donnant sur la page d'accueil. C'est que je tente de réaliser en vain. J'ai réussi à créer la page index.html avec un lien à l'intérieur sur ma page d'accueil index.php. Maintenant ce qui me pose problème c'est ou placer ce fichier pour qu'il soit appelé par Prestashop... Pouvez-vous m'aider et prendre le tps de m'expliquer pas à pas les étapes à suivre? En effet, mettre le dossier à la racine du site 0_o????? je ne comprends pas :/ merci d'avance Link to comment Share on other sites More sharing options...
Olivia coum Posted May 26, 2013 Share Posted May 26, 2013 Re que signifie Pyssou: "Ce fichier passe avant index.php" Comment dois-je m'y prendre pour que ce soit le cas. J'ai mis mon fichier index.html comme vous à la racine de mon site et j'ai changé dans le header.tpl la ligne 47 mais malheureusement pour moi cela ne fonctionne pas. Ma page homepage se charge comme d'habitude sans afficher ma page index.html en premier. Un petit coup de main svp Link to comment Share on other sites More sharing options...
stephane1975 Posted May 28, 2013 Share Posted May 28, 2013 bonjour a tous, voila j'aimerais creer une page avant l'index. une page qui prend tout l'ecran et qui affiche du texte avec un carrousel d'image. j'aimerais egalement un lien qui redirige vers la boutique un peu le principe du site rueducommerce. je ne suis pas developpeur ni codeur. pourriez vous m'éclairez s'il vous plais car j'ai suivi le tuto pour la creation de page mais celle ci se retrouve centrer sur mon site comme une nouvelle page mais se n'est pas le résultat que je souhaites. merci d'avance Link to comment Share on other sites More sharing options...
Olivia coum Posted May 31, 2013 Share Posted May 31, 2013 Re bonjour, je vais finalement pouvoir donner une fin (je l'espère) aux recherches de tous ceux qui souhaitent mettre une page d'intro (flash, vidéo, texte, )avant cette fameuse page index.php de prestashop 1: créez une page html avec votre éditeur personnel et nommez-la: blabla.html 2: (facultatif) à l'intérieur de cette page crée un lien sur lequel les visiteur de votre site pourront cliquer afin de quitter cette page pour entrer dans la véritable page d'accueil de votre site: <p id="boutton"> <a class="login" href="http://localhost/prestashop/index.php">ENTREZ</a> </p> Ce bout de code est à placer dans le fichier blabla.html que vous êtes sur le point de créer Comme vous pouvez le constater, le bouton en cliquant dessus vous redirige vers votre index.php qui se situe à la racine de votre site. Attention, pour ma situation, je travaille en local, c'est pourquoi j'ai localhost dans l'adresse de redirection. A vous de faire les modifs 3. placer le fichier blabla.html dans le dossier prestashop (à la racine) 4. Placer ce bout de code dans le fichier htaccess que vous trouverez dans votre dossier prestashop DirectoryIndex blabla.html index.php laissez place à votre imagination pour éditer votre page d'intro 1 Link to comment Share on other sites More sharing options...
lorelei Posted July 18, 2013 Share Posted July 18, 2013 Bonjour je cherche à faire une page avant la page index.php sur un site de vente en ligne presta. J'ai essayé tout ce que j'ai pu trouver sur ce topic mais rien ne fonctionne une catastrophe Comme je suis un poil novice je demande du secours ! J'ai une version récente de prestashop (si ça peut aider) Link to comment Share on other sites More sharing options...
Olivia coum Posted August 17, 2013 Share Posted August 17, 2013 Bonjour, voila j'ai un petit souci actuellement avec ma page flash avant l'accueil index.php. J'ai maintenant hébergé mon site et je souhaite utiliser l'option rewriting pour avoir un meilleur référencement sur google mais en faisant ça la redirection de mon flash vers la véritable page d'accueil de mon site prestashop ne se fait pas. Au contraire, j'obtiens réactualisation répétée de mon flash qui est censé pointer sur: http://www.mondomaine.fr/index.php Avez-vous une idée sur ce que je dois modifier afin d'avoir ma page index.php après mon flash? Merci d'avance Link to comment Share on other sites More sharing options...
Kaby Posted November 5, 2013 Share Posted November 5, 2013 Hello, Je cherche à faire une prehome à partir de laquelle on pourrait se rendre sur les versions "locales" (langue et devise) du pays de son choix. Est-ce cette méthode du htaccess est compatible avec la réécriture d'url ? Parce que j'aimerai éviter d'avoir une url avec "index.php" dedans... Link to comment Share on other sites More sharing options...
aggelon Posted February 13, 2014 Share Posted February 13, 2014 (edited) Re bonjour, je vais finalement pouvoir donner une fin (je l'espère) aux recherches de tous ceux qui souhaitent mettre une page d'intro (flash, vidéo, texte, )avant cette fameuse page index.php de prestashop 1: créez une page html avec votre éditeur personnel et nommez-la: blabla.html 2: (facultatif) à l'intérieur de cette page crée un lien sur lequel les visiteur de votre site pourront cliquer afin de quitter cette page pour entrer dans la véritable page d'accueil de votre site: <p id="boutton"> <a class="login" href="http://localhost/prestashop/index.php">ENTREZ</a> </p> Ce bout de code est à placer dans le fichier blabla.html que vous êtes sur le point de créer Comme vous pouvez le constater, le bouton en cliquant dessus vous redirige vers votre index.php qui se situe à la racine de votre site. Attention, pour ma situation, je travaille en local, c'est pourquoi j'ai localhost dans l'adresse de redirection. A vous de faire les modifs 3. placer le fichier blabla.html dans le dossier prestashop (à la racine) 4. Placer ce bout de code dans le fichier htaccess que vous trouverez dans votre dossier prestashop DirectoryIndex blabla.html index.php laissez place à votre imagination pour éditer votre page d'intro Merci, ça marche impec ! NON=> ca ne marche pas finalement : il y a un message d'erreur ajax lorsqu'on veut ajouter un produit dans le panier Au début, j'avais fait la méthode de Pyssou qui ne changeait pas le .htaccess et modifiait le header.tpl : cela semblait fonctionner, mais mon homeslider ne marchait plus... j'imagine qu'il y a d'autres endroits où cela aurait posé des problèmes... Avec cette méthode du .htaccess, tout a l'air OK sur toutes mes pages. Merci PS: j'ai pas encore trouvé de solution Si, c'est bon, je la colle ici : Ecrire le message du dessus m'a obligé à formaliser un peu plus mon besoin, et je me suis rendu compte qu'il ne me manquait pas grand chose pour aboutir Ainsi, la solution était simple : j'ai créé ma prépage, qu'on appelera prepage.php par exemple, qui contient ceci : <?php setcookie("prepage"); ?> <div align=center><a href='index.php'><img src='prepage.jpg'></a></div> à enregistrer à la racine du site, évidemment. Pour les novices comme moi, ce code signifie : - créer un cookie, appelé prepage, qui s'effacera tout seul lorsque le visiteur fermera le navigateur - afficher l'image de prepage.jpg (préparée à l'avance) - si on clique sur l'image, alors le site normal (index.php) s'affiche Ensuite, dans le index.php qui existe déjà sur tout site Prestashop, modifier le Dispatcher::getInstance()->dispatch(); en if (!(isset($_COOKIE["prepage"]))) { print ("<script language = \"JavaScript\">"); print ("location.href = 'prepage.php';"); print ("</script>"); } else { Dispatcher::getInstance()->dispatch(); } Ce qui signifie : - regarde le coookie prepage - s'il n'existe pas, alors affiche la prepage - sinon (=cela veut dire que la prepage a déjà été affichée, vu que c'est elle qui créé le cookie), alors afficher le site normal C'était pourtant simple Merci à toi Kaby, je me débattais avec des histoires de .htaccess ou autre contentDirectory pour rien du tout et tu m'as mis sur la piste ! Pfff... si je connaissais le php, j'y aurais pensé avant... Edited May 19, 2014 by aggelon (see edit history) Link to comment Share on other sites More sharing options...
website33 Posted February 18, 2014 Share Posted February 18, 2014 Re bonjour,je vais finalement pouvoir donner une fin (je l'espère) aux recherches de tous ceux qui souhaitent mettre une page d'intro (flash, vidéo, texte, )avant cette fameuse page index.php de prestashop 1: créez une page html avec votre éditeur personnel et nommez-la: blabla.html 2: (facultatif) à l'intérieur de cette page crée un lien sur lequel les visiteur de votre site pourront cliquer afin de quitter cette page pour entrer dans la véritable page d'accueil de votre site: <p id="boutton"> <a class="login" href="http://localhost/pre...php">ENTREZ</a> </p> Ce bout de code est à placer dans le fichier blabla.html que vous êtes sur le point de créer Comme vous pouvez le constater, le bouton en cliquant dessus vous redirige vers votre index.php qui se situe à la racine de votre site. Attention, pour ma situation, je travaille en local, c'est pourquoi j'ai localhost dans l'adresse de redirection. A vous de faire les modifs 3. placer le fichier blabla.html dans le dossier prestashop (à la racine) 4. Placer ce bout de code dans le fichier htaccess que vous trouverez dans votre dossier prestashop DirectoryIndex blabla.html index.php laissez place à votre imagination pour éditer votre page d'intro Il faut également décocher "Rediriger automatiquement vers l'URL canonique". Link to comment Share on other sites More sharing options...
J. Danse Posted February 18, 2014 Share Posted February 18, 2014 Bonsoir à tous, Afin de pouvoir prendre le dessus sur l'index (et je préciserais: sur le dispatcher qui affiche votre homepage), il vous faut réaliser un module qui viendra se greffer sur le hook "actionDispatcher". Cela nécessite après quelques compétences et code pour pouvoir notamment voir sur quelle page on se trouve et pour amorcer une page alternative (et avoir un cookie éventuel, au besoin). Link to comment Share on other sites More sharing options...
aggelon Posted May 19, 2014 Share Posted May 19, 2014 (edited) Ecrire le message du dessus m'a obligé à formaliser un peu plus mon besoin, et je me suis rendu compte qu'il ne me manquait pas grand chose pour aboutir Ainsi, la solution était simple : j'ai créé ma prépage, qu'on appelera prepage.php par exemple, qui contient ceci : <?php setcookie("prepage"); ?> <div align=center><a href='index.php'><img src='prepage.jpg'></a></div> à enregistrer à la racine du site, évidemment. Pour les novices comme moi, ce code signifie : - créer un cookie, appelé prepage, qui s'effacera tout seul lorsque le visiteur fermera le navigateur - afficher l'image de prepage.jpg (préparée à l'avance) - si on clique sur l'image, alors le site normal (index.php) s'affiche Ensuite, dans le index.php qui existe déjà sur tout site Prestashop, modifier le Dispatcher::getInstance()->dispatch(); en if (!(isset($_COOKIE["prepage"]))) { print ("<script language = \"JavaScript\">"); print ("location.href = 'prepage.php';"); print ("</script>"); } else { Dispatcher::getInstance()->dispatch(); } Ce qui signifie : - regarde le coookie prepage - s'il n'existe pas, alors affiche la prepage - sinon (=cela veut dire que la prepage a déjà été affichée, vu que c'est elle qui créé le cookie), alors afficher le site normal C'était pourtant simple Merci à toi Kaby, je me débattais avec des histoires de .htaccess ou autre contentDirectory pour rien du tout et tu m'as mis sur la piste ! Pfff... si je connaissais le php, j'y aurais pensé avant... Edited May 19, 2014 by aggelon (see edit history) Link to comment Share on other sites More sharing options...
smaykl Posted December 16, 2014 Share Posted December 16, 2014 heey there guys ! je suis entraint de faire tout ce qui precede, mais sans resultat :/ j'ai une version prestashop 1.6 . comment faire ca SVP : 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