Bienvenue, Invité
Merci de vous identifier ou de vous inscrire.    Mot de passe perdu?

Deplacer "Mon Panier" dans le Footer
(1 lecteur(s)) (1) Invité(s)
Aller en basPage: 12
SUJET:

Deplacer "Mon Panier" dans le Footer

#30220
Ilan
Fresh Boarder
Messages: 11
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Deplacer "Mon Panier" dans le Footer

Il y a 8 Années, 3 Mois
Karma: 0  
Bonsoir à tous,

Je fais appel à vous pour m'aider à modifier le template de mon magento. Je débute dans la personnalisation de Magento mais j'ai la patience d'en apprendre plus tous les jours.

Petite précision : Mes fichiers de bases sont ceux du thème modern que je modifie pour intégrer ma maquette.

J'ai donc voulu ajouter le block Mon Panier dans le footer (en plus de celui dans la colonne de gauche).

J'ai donc ajouter cette ligne dans /layout/checkout.xml

Code :

<reference name="footer">
            <block type="checkout/cart_sidebar" name="mini_cart" as="mini_cart" template="f_cadres/mini_cart.phtml"/>
        </reference>



J'ai ensuite dupliquer le fichier sidebar et je l'ai placé dans modern/template/f_cadres pour le nommer mini_cart.phtml

Puis appeler le getChildHtml dans le modern/template/page/html/footer.phtml

Code :

<?php  echo $this->getChildHtml('mini_cart') ?>


Sans oublier de vider le cache...

Résultat : Le panier s'affiche très bien. Je fais un test pour ajouter un produit et premier bug : Le produit s'ajoute bien et est affiché dans la page main (colonne de gauche) mais dans le footer rien ! Il me marque toujours : "Panier vide".
Je décide de revider le cache et là c'est bon, le produit s'affiche bien dans la colonne de gauche et dans le footer.
Re-petit essai : Je retire le produit et là même problème. Le panier dans la colonne de gauche se met bien à jour et n'affiche plus de produit mais le panier dans le footer est toujours rempli. Je vide le cache...et le panier du footer se vide...

Un peu bizarre comme bug...

Qu'en pensez-vous ?


Merci à vous d'avance pour votre aide,

Amicalement,
Ilan
 
L'administrateur a désactivé l'accès public en écriture.
#30234
phy4me
Gold Boarder
Messages: 194
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Sexe: Masculin IRASALE irasalenet@gmail.com Lieu: Morocco Date anniversaire: 01/01

Re:Deplacer

Il y a 8 Années, 3 Mois
Karma: 5  
A mon avis ce n'est pas bizzare ... au contraire c'est logique
Le footer est en cache et qui ne se supprime pas suite à l'action d'ajout au panier ... là a mon avis ce que tu dois faire est d'aller chercher la clè du cache du footer et surcharger la méthode d'ajout au panier et y ajouter un :

Mage::app()->cleanCache('cle-footer-cache') ;

Sinon si tu ne connais pas la clè tu fais : Mage::app()->cleanCache();

Ou au lieu de surcharger la méthode ... placer un observer
 
Irsale Abdel
www.irsale.eb2a.com
L'administrateur a désactivé l'accès public en écriture.
#30238
Ilan
Fresh Boarder
Messages: 11
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Re:Deplacer "Mon Panier" dans le Footer

Il y a 8 Années, 3 Mois
Karma: 0  
Merci Phy4me pour ton aide et ta réponse rapide.

Malheureusement, comme je l'ai dis plus haut, c'est la première fois que je m'amuse à personnaliser complètement Magento. Donc je comprends l'erreur mais je ne saurais trouvé le fichier pour ajouter la ligne que tu viens de publier.

Je ne comprends pas non ce que tu veux dire par surcharger la méthode ou placer un observer.

Si tu pouvais m'éclairer en me donnant plus de détails cela m'aiderait ;)

Merci encore
 
L'administrateur a désactivé l'accès public en écriture.
#30242
phy4me
Gold Boarder
Messages: 194
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Sexe: Masculin IRASALE irasalenet@gmail.com Lieu: Morocco Date anniversaire: 01/01

Re:Deplacer

Il y a 8 Années, 3 Mois
Karma: 5  
Tu peux tester déjà que l'idée marche avant de faire la suite ...
Aller dans le fichier
Mage_Checkout_CartController
et dans la fonction addAction ajouter la lige : Mage::app()->cleanCache(); juste après le
$cart->save();

Surcharger une méthode: Normalement on ne dois pas toucher au noyau de Magento, du coup la solution pour personnaliser une fonction est de dirigé tout appel à celle-ci vers une autre méthode que nous créons ... c'est à peu prêt la notion de surcharge, comme je le comprend.

Event/observer: c'est l'un des design pattern implémenté dans Magento ... pour simplifier
Tu peux par exemple imaginer une société et placer des agents à l'entrée de la porte, dans l'ascenseur, le couloir, juste devant la porte des bureaux des collaborateurs. Quand le directeur passe par la porte le premier agent envoi un signal pour que la lampe '1' s'allume ... au couloir, une lampe '2' ... etc. Jusqu'à ou il arrive au bureaux des collab.

C'est à peut prêt le même principe
Event => Agent => Évènement dans Magento
Observer => lampe => Un traitement qui se met dans une fonction particulière

Donc, ce qui te faut là c'est juste chercher l'évènement de l'ajout au panier, ensuite créer ton observer et le placer sur cet évènement.
 
Dernière édition: 09/04/10 à  06:20 Par phy4me.
Irsale Abdel
www.irsale.eb2a.com
L'administrateur a désactivé l'accès public en écriture.
#30246
Ilan
Fresh Boarder
Messages: 11
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Re:Deplacer "Mon Panier" dans le Footer

Il y a 8 Années, 3 Mois
Karma: 0  
Merci pour tes explications. C'est très simple à saisir au départ mais je pense qu'avec un peu d'entrainement je finirai par comprendre.

J'ai donc ajouter la ligne Mage::app()->cleanCache(); dans le fichier CartController.

Ce qu'il se passe maintenant c'est que le produit s'ajoute bien dans mon mini_cart du footer ! C'est déjà un pas en avant !

Par contre, si je veux retirer un produit, cela fonctionne pas. Il se trouve toujours dans le footer alors que le panier est vide...

A mon avis il doit y avoir une autre fonction où je dois ajouter la ligne ci-dessus mais je ne vois pas laquelle
 
L'administrateur a désactivé l'accès public en écriture.
#30256
phy4me
Gold Boarder
Messages: 194
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Sexe: Masculin IRASALE irasalenet@gmail.com Lieu: Morocco Date anniversaire: 01/01

Re:Deplacer

Il y a 8 Années, 3 Mois
Karma: 5  
yeees you're right

Dans le même fichier : deleteAction()
après save tjs
 
Irsale Abdel
www.irsale.eb2a.com
L'administrateur a désactivé l'accès public en écriture.
#30280
Ilan
Fresh Boarder
Messages: 11
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Re:Deplacer "Mon Panier" dans le Footer

Il y a 8 Années, 3 Mois
Karma: 0  
Thanks. Et pour la route j'ai même placé la ligne dans updatePostAction !

J'ai fais quelques essaies basiques et ça à l'air de fonctionner...mais...

En montrant le site à un ami, il m'a fait une remarque "C'est bizarre en arrivant sur le site le panier dans le footer me dit que j'ai un 1 article alors que je viens d'arriver ??"

Je lui demande quel article et il me répond celui que j'avais rajouté juste avant pour essayer un truc ! Et pourtant, le panier dans son "main content" est vide...

Donc apparemment quand je rajoute un produit dans le panier, ca l'affiche chez tout le monde mais seulement dans le footer...

Bizarre comme bug
 
L'administrateur a désactivé l'accès public en écriture.
#30564
Ilan
Fresh Boarder
Messages: 11
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Re:Deplacer "Mon Panier" dans le Footer

Il y a 8 Années, 3 Mois
Karma: 0  
Re bonjour,

Ayant chercher sur plusieurs forum, je n'arrive pas du tout à me débrouiller avec ce problème de cache dans le footer. J'ai donc décidé de sortir mes block du footer.

Explication un peu de ma page :

<-- div page -->
<---div header-container --->
<---/div header-container --->
<---div main-container --->
<---/div main-container --->
<---div footer-container --->
<----div footer-cadres ---->
<-----cadres newsletter/mini.login/mini.cart ---->
<----/div footer-cadres ---->
<---/div footer-container --->
<-- /div page -->

Ce que j'aimerai c'est passé mes cadres entre le main-container et le footer container. Par contre je m'y perd dans les layout. Je ne sais pas ou placé mes codes du genre

Code :

<block type="page/template_links" name="identification" as="identification" template="f_cadres/mini.login.phtml"/>


Ou dois-je le placer pour qu'il soit affiché sur ma page ?

Merci d'avance pour votre aide.
 
L'administrateur a désactivé l'accès public en écriture.
Revenir en hautPage: 12
Modérateur: Gabriiiel, ILOA, zuiko