DEVELOPPEUR WEB FREELANCE Expert e-commerce Prestashop depuis 2010

12 mai
2014

5 trucs à savoir pour bien installer un thème sur la version 1.6 de Prestashop

5 trucs à savoir pour bien installer un thème sur la version 1.6 de Prestashop

Cet article fait un peu suite à celui que j'ai publié sur les problèmes fréquents lors de l'installation d'un thème sur une boutique Prestashop. La sortie de la version 1.6 de Prestashop a engendré de nouveaux petits soucis de compréhension.

Là encore et comme pour mon article précédent, je vais détailler ceux qui sont le plus souvent rencontrés et qui ne sont pas des problèmes à proprement parler mais surtout des choses à savoir pour installer un thème correctement sur la version 1.6 de Prestashop.

1 - Sélection du thème à activer sur la boutique

Comme vous avez certainement pu le constater, la sélection du thème à activer sur la boutique est différente de celle des précédentes versions de Prestashop. Il est désormais possible de sélectionner les modules à activer ou désactiver.

 

Cette option aurait pu être sympa, sauf que de ce que j'ai pu voir jusqu'à présent, elle ne fonctionne qu'une fois sur trente, c'est-à-dire que quel que soit le thème sélectionné, les modules proposés à l'activation/désactivation sont toujours ceux du thème par défaut...

 

Alors c'est cool quand on veux activer le thème par défaut mais ça l'est beaucoup moins quand il s'agit d'en activer un autre ! Donc la meilleure façon pour l'instant d'activer un thème autre que celui par défaut est de décocher absolument tous les modules proposés lors de cette étape afin d'éviter le bordel sur la boutique.

 

Idem lorsque vous souhaitez activer le thème par défaut temporairement par exemple pour effectuer des tests. Décochez tous les modules proposés sinon vous allez devoir reconfigurer tous les modules de votre thème habituel lorsque vous voudrez le réactiver.

 

 

2 - L'ancien thème se mélange avec le nouveau thème installé

Cette phrase précise est typique des gens qui ne comprennent pas comment fonctionne exactement les thèmes et les modules sur Prestashop. Les thèmes ne se mélangent pas entre eux, jamais, absolutely never... ou alors si vraiment c'est le cas Houston we have a problem !!...

 

Cela peut donner cette impression mais en fait ce sont juste certains modules utilisés par l'ancien thème qui ne sont tout simplement pas désactivés, ou mal placés. Il convient donc de repérer quels sont ces modules et soit de les désactiver, soit de les placer conformément aux préconisations du nouveau thème installé.

 

 

3 - Les colonnes n'apparaissent pas ou uniquement sur certaines pages

Ce souci peut être causé par plusieurs facteurs qu'il convient de bien vérifier :

 

  • Vérifier que les colonnes du thème sont bien activées dans l'onglet Préférences >> Thèmes.
  • Vérifier que les modules des colonnes n'ont pas d'exceptions dans l'onglet Modules >> Positions. C'est souvent ce qui cause ce problème car dans la version 1.6 de Prestashop, tous les modules des colonnes ont par défaut 180000 exceptions...
  • Vérifier que les modules sont bien greffés dans les bonnes colonnes. Cela paraît bête mais parfois on peut passer à côté.
  • Vérifier que l'affichage des colonnes n'est pas geré par les controllers. C'est un peu plus technique mais moi comme je suis très super gentille, je précise comment faire pour modifier cela dans les documentations PDF de mes thèmes.

 

 

4 - Certains modules ne peuvent pas êtres greffés sur certains hooks

En mettant à jour mes thèmes pour la version 1.6 de Prestashop, je me suis aperçue que certains modules ne pouvaient plus être greffés à certains hooks. J'ai remarqué cela spécialement pour le module "Bloc Meilleures Ventes" qui ne peut plus être greffé au homepage alors que cela était possible dans les précédentes versions.

 

Qu'à cela ne tienne, il suffit de redonner cette possibilité à ce module et pour cela rien de plus simple, il suffit d'ajouter dans son fichier PHP (blockbestsellers.php) les lignes suivantes :

public function hookHome($params)
{
    if (!isset(BlockBestSellers::$cache_best_sellers))
        BlockBestSellers::$cache_best_sellers = $this->getBestSellers($params);
    $this->smarty->assign(array(
        'best_sellers' => BlockBestSellers::$cache_best_sellers,
        'mediumSize' => Image::getSize(ImageType::getFormatedName('medium')),
        'smallSize' => Image::getSize(ImageType::getFormatedName('small'))
    ));

    if (BlockBestSellers::$cache_best_sellers === false)
        return false;

    return $this->display(__FILE__, 'blockbestsellers-home.tpl', $this->getCacheId('blockbestsellers-home'));
}

Et boum on peut de nouveau greffer le module au homepage et ça c'est trop bien quand même.

 

 

5 - Certaines fonctionnalités du thème par défaut ne sont pas présentes

Là malheureusement je n'ai pas d'astuce à vous donner car oui, cela peut arriver. Chaque thème est libre de reprendre ou non les fonctionnalités présentes dans le thème par défaut de Prestashop.

 

En règle générale, les fonctionnalités les plus importantes ou indispensables sont toujours présentes mais les fonctionnalités que l'on pourrait qualifier de "gadgets" comme par exemple l'aperçu rapide des produits ou l'ajout au panier avec popup ne sont pas forcément reprises sur les thèmes tiers. Inversement d'ailleurs, il arrive que certaines fonctionnalités qui ne sont pas présentes sur le thème par défaut de Prestashop soient en revanche intégrées dans des thèmes tiers.

 

Il convient toujours lorsque l'on souhaite acquérir un nouveau thème de bien lire les descriptions, documentations et fiches techniques et également de bien faire le tour de la démo live lorsqu'elle est disponible. Et en cas de doute, ne pas hésiter à contacter l'auteur du thème.

 

 

Conclusion

La version 1.6 de Prestashop a un peu modifié les habitudes mais les soucis rencontrés lors de l'installation d'un thème restent majoritairement des soucis de compréhension et de connaissance du fonctionnement de Prestashop. Lorsque vous rencontrez un problème pour installer un thème Prestashop et que les indications que vous pouvez trouver dans les documentations ou sur les différents blogs et forums ne vous aident pas, alors n'hésitez pas à contacter l'auteur du thème.

Auteur de cet article : Sabrina ROUSSEAU

Développeur web freelance spécialiste de la solution e-commerce Prestashop depuis 2010. Créatrice du site web Prestacrea ainsi que des produits qui y sont proposés.

COMMENTAIRES

7 commentaires

Eolia

25/06/2014

Merci Prestacrea, heureusement que certaines bonnes âmes prennent encore le temps d'expliquer aux newbies :)
Le genre de post qui devraient être épinglés chez Prestashop...

Prestacrea

03/07/2014

Merci Eolia.
C'est vrai que ce n'est pas toujours facile pour les nouveaux venus de comprendre certaines subtilités de Prestashop :)

lotfi

11/08/2014

Merci madame
Tout simplement.

julboogie

03/12/2014

Bonjour,

Merci pour le truc sur blockbestsellers. cependant, lorsque j'intègre votre code dans blockbestsellers.php, j'obtiens une erreur :
[PrestaShop] Fatal error in module blockbestsellers:
syntax error, unexpected T_STRING, expecting T_FUNCTION

Prestacrea

09/12/2014

Bonjour,

Dans ce cas c'est que l'intégration du code a été mal réalisée (erreur de syntaxe, intégration au mauvais endroit...)

Pat

13/01/2015

Très intéressé par vos trucs, cependant, je pense être un cas à part... Mon module blockcategories s'affiche partout correctement en leftcolumn sauf quand j'affiche des sous-catégories. Si je rentre dans livedit, le hook s'affiche mais pas le block qui reste invisible...
Pouvez-vous m'expliquer ce qui cloche SVP ?
Je précise que j'ai vérifié toutes les exceptions et les différents points que vous précisez dans vos 5 trucs. Aucune explication plausible dans les forums sur le Web.

Prestacrea

19/01/2015

Bonjour,

Aucune idée, le meilleur moyen d'avoir une réponse serait de poster votre problème sur le forum Prestashop.
Cet article a été rédigé il y a plus d'un an. Les commentaires sont fermés.