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

Déplacer les messages de la boutique
(1 lecteur(s)) (1) Invité(s)
Aller en basPage: 1
SUJET:

Déplacer les messages de la boutique

#63039
Hellau
Fresh Boarder
Messages: 2
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Déplacer les messages de la boutique

Il y a 5 Années, 1 Mois
Karma: 0  
Bonsoir à tous,

Je suis à la recherche d'une solution pour déplacer les messages de la boutique (success, error, notice) dans un block personnalisé, qui se trouve sous le header.

Dans ce block, j'y affiche le breadcrumbs.

J'ai réussi à y déplacer certains messages (l'ajout au comparateur à partir de la page liste produit par exemple.) Pour ce faire

- J'ai un fichier "top.phtml" dans core/messages, que j'ai inclu dans mon block (a partir de local.xml) :

===> Code dans "top.phtml"

Code :


<?php $_messageCollection = $this->getMessagesBlock()->getMessageCollection() ?>

<?php if ($_messageCollection->count()): ?>
<div>
<?php
    echo $this->getMessagesBlock()->getGroupedHtml();
    $_messageCollection->clear();
?>
</div>
<?php endif; ?>



===> Code dans "local.xml"

Code :


<reference name="breadcrumbs">
            <block type="core/template" name="top.messages" template="core/messages/top.phtml" before="-" />
</reference>



Mais tout autre messages (erreur connexion, pas de résultat de recherche, ajout à la wishlist) continue de s'afficher dans le zone centrale de contenu des différents pages.

Auriez vous une solution svp ?

Merci d'avance.
 
Dernière édition: 02/03/13 à  12:50 Par Hellau.
L'administrateur a désactivé l'accès public en écriture.
#63458
7th-avenue
septieme.avenue [at] gmail.com
Expert Boarder
Messages: 115
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Sexe: Masculin Date anniversaire: 12/09

Re:Déplacer les messages de la boutique

Il y a 5 Années
Karma: 4  
On peut recuperer les messages par ce biais là :

Code :

$messages=Mage::getSingleton("customer/session")->getMessages();
echo $this->getLayout()->createBlock("core/messages")->setMessages($messages)->getGroupedHtml();



C'est la methode brute (je précise ;)). Elle evite le passage par le layout...

Ensuite il faut rechercher ceci dans les templates puis les enlever si besoin :
Code :

<?php echo $this->getMessagesBlock()->getGroupedHtml() ?>


Car c'est surement ce petit bout de code qui fait que certains messages persistent.
 
Développeur Magento - Contact me : septieme.avenue[at]gmail.com
L'administrateur a désactivé l'accès public en écriture.
Revenir en hautPage: 1
Modérateur: admin, Gabriiiel, ILOA, zuiko