Insérer pop-up dans une page CMS | Astuce Prestashop 1.6

Un client désirait insérer un système de pop-up dans la page cms de Prestashop

Je ne voulais pas installer un n-ième module pour faire simplement cela ni insérer un autre script/bibliothèque que ceux inclus dans Prestashop.

Cette astuce Prestashop est valable pour la version 1.6

Voilà l’astuce.

————

1) Ouvrir un ficher qui se nommera Validate.php, insérer le code suivant puis enregistrer le dans override/classes/Validate.php

————

2) Ouvrir un ficher qui se nommera FrontController.php, insérer le code suivant puis enregistrer le dans override/classes/controller/FrontController.php

————

3) Dans le dossier fichier footer.tpl situé dans montheme/footer.tpl rajouter avant la balise :

————

4) Dans le back-office / Préfence / cms :

A noter : ?content_only=1 permet de ne pas avoir le footer et le header dans la fenêtre popup.

I-frame prestashop

Articles similaires

Désactiver « Recevez les offres spéciales de nos partenaires » | Astuce Prestashop 1.6...
views 2925
Cette phrase  "Recevez les offres spéciales de nos partenaires"  apparait lors de la création d'un compte comme vous pouvez le voir sur la photo ci-dessous Sous quel terme se trouve cette option dans le back-office de Prestashop  Dans le back office de Prestashop, cette phrase est englobée sous le terme "Opt-in" Comment supprimer cette option dans le back-office de Prestashop  Voici la...
Comment créer un compte employé/profils/permissions dans PrestaShop 1.6 & 1.7
views 8417
La page d'administration "Employés" permet de créer des comptes afin de se connecter au back-office de PrestaShop. La connexion aux back-office se fait grâce à une adresse email et un mot de passe. A noter : Si vous créez un compte employé unique en SuperAdmin tout le monde pourra modifier les commandes, ajouter/supprimer des produits, accepter ou refuser des paiements...., c'est pour cela que ...
Afficher le champ adresse sur plusieurs lignes | Bloc contact infos – Astuce Presta...
views 1142
Cette astuce Prestashop est valable pour la version 1.6 Vous l'avez sûrement remarqué, en bas de page, l'adresse de votre magasin est sur une seule ligne. Ce rapide tutoriel va vous permettre d'afficher le champ adresse sur plusieurs lignes Valable pour Prestashop 1.6 et 1.5 ----------------------------------- 1) Pour insérer les informations de votre boutique, il faut aller...
Quelques variables qui peuvent vous aider pour votre mise en page – Prestashop 1.7 ...
views 15486
Dans le tuto du jour, je vais énumérer quelques variables de PrestaShop 1.6 PrestaShop 1.7 qui peuvent vous aider pour personnaliser votre site. N'hésitez pas à les partager via les commentaires ------------------ Insérez un lien vers une page CMS dans un fichier TPL Prestashop 1.6 : {$link->getCmsLink()} Exemple : l'id de la page cms est 3 Prestashop 1.7 : {url entity='cms' id=$i...
Le nouveau menu du back-office de Prestashop 1.7 – Partie 1
views 4825
La version R.C.0.1 de Prestasho 1.7 est sortie, et grande surprise son back-office a été traduit en français (enfin une grande partie) Par rapport à Prestashop 1.6,  celui-ci a totalement été remodelé. Il se veut plus ergonomique et plus simple d’utilisation. Dans ce tutoriel, nous allons voir comment a été remanié le "menu". Par rapport à Prestashop 1.6, le menu est organisé en 3 parties...

10 réponses à “Insérer pop-up dans une page CMS | Astuce Prestashop 1.6”

  1. JF David dit :

    Bonjour,
    Merci pour cette astuce, fort utile.
    Pour mon site en version Prestashop 1.6.1.3, je rencontre toutefois un problème, par ex les CGV ne s’affichent pas dans un popup mais en pleine page. J’ai résolu cette difficulté en remplaçant :

    $(‘a.iframe’).fancybox();

    Par :

    $(document).ready(function() {
    $(‘a.iframe’).fancybox({
    ‘type’ : ‘iframe’,
    ‘width’:680,
    ‘height’:700
    });
    });

    Par ailleurs, j’aimerais savoir à quoi sert l’ajout dans l’override/classes de Validate.php
    Si je ne l’ajoute pas, tout semble fonctionner quand même.

    Cordialement
    JF David

  2. Sophie dit :

    bonjour,

    C’est exactement ce que je recherchais.
    Par contre j’ai également rajouter le code de JF David mais le fenêtre ne s’ouvre toujours pas en pop up.

    Merci

  3. Sophie dit :

    En fait il fallait tout simplement rajouter type= »text/javascript » pour que la balise soit prise en compte.

    $(document).ready(function() {
    $(‘a.iframe’).fancybox({
    ‘type’ : ‘iframe’,
    ‘width’:600,
    ‘height’:600
    });
    });

    Merci

  4. oreys dit :

    Bonjour,
    Je souhaite insérer un lien qui ouvrira une fenêtre popup sur ma page panier, donc un lien à insérer donc mon fichier shopping-cart.tpl, j’ai donc créé le fichier validate.php que j’ai enregistré, pour le deuxième fichier à créer « frontControler.php, de mon côté il existe déjà… Que dois je faire svp?
    Merci 🙂

  5. c_majory dit :

    Bonjour,

    il me faudrait le code de l’override du fichier frontControler.php

  6. AlainR dit :

    Dans ce cas, il ne faut ajouter que  »
    public function setMedia()
    {
    parent::setMedia();

    // Execute Hook FrontController SetMedia
    $this->addjqueryPlugin(‘fancybox’);
    $this->addCSS(_PS_CSS_DIR_.’jquery.fancybox.css’, ‘all’); // @TODO
    Hook::exec(‘actionFrontControllerSetMedia’, array());
    }
     » juste après « class FrontController extends FrontControllerCore
    { »

    Merci pour cette astuce!
    Comme JF David, je n’ai pas modifié Validate.php et ça fonctionne à merveille. À quoi sert ce code ?
    Merci encore!

  7. Romain dit :

    Ok cela fonctionner merci ! Juste un petit souci pour afficher un formulaire mail chimp 🙂

  8. julien dit :

    Bonjour à tous,
    J’ai pris en compte toutes vos remarques,
    ça s’ouvre toujours dans une nouvelle page et non onglet 🙁

    helppp 🙂
    bouton : plus de détails

  9. c_majory dit :

    Bonjour,

    Difficile de dire sans voir mais

    1) vous n’avez pas nettoyé le cache de Prestashop (supprimant le ficher class_index.php qui se situe dans le dossier cache)
    2) Votre thème ne permet pas de le faire
    3) Le code n’est pas bon

    Sinon vous avez ce module : http://www.store-opart.fr/p/4-opartajaxpopup.html

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *