Jump to content

Bloc information client ne s'affiche pas entièrement dans le top nav [RESOLU]


Recommended Posts

Bonjour,

Dans ma "top nav" figure le module Contact puis Bloc information client (connexion/déconnexion) puis Panier.

Aucun soucis visuel lorsque le client n'est pas connecté.

Lorsque ce dernier ce connecte, on ne peut visualiser la "partie" Voir mon compte client. Le nom est invisible mais l'on peut cliquer dessus (à l'aveugle)

Ci joint une capture d'écran.

Si je greffe le module Information client dans le Display top, aucun soucis par contre. C'est dans le display Nav le problème d'affichage...

Avez vous une piste ? Peut être faut il modifier la largeur de la div account ?

Voici mon nouveau site en question : http://creationata-fairepart.com

 

Sans titre-2.jpg

Edited by creationata (see edit history)
Link to comment
Share on other sites

La balise <span> est vide alors qu'elle devrait contenir le nom / prénom, donc sa longueur est minimale

image.png.7269e2a59a4d74cee7ed5c0dac4ce771.png

Il faudrait mettre le code du tpl ici et/ou afficher les erreurs (modif du /config/defines.inc.php) car la variable qui devrait s'afficher ne semble pas définie ou est simplement absente.

Le tpl concerné doit être dans /thèmes/votre_theme/modules/blockpermanentlinks/blockpermanentlinks-header.tpl

Link to comment
Share on other sites

Bonjour et merci pour votre réponse

Alors quand j'affiche les erreurs j'ai ça :

Notice: Trying to get property of non-object in /home/creationhg/www/cache/smarty/compile/b2/87/a4/b287a4da3f33418a0d3f64013d6440989c3f998d.file.nav.tpl.php on line 33

Notice: Trying to get property of non-object in /home/creationhg/www/cache/smarty/compile/b2/87/a4/b287a4da3f33418a0d3f64013d6440989c3f998d.file.nav.tpl.php on line 34

et Voici les lignes en question 

<div class="header_user_info">
		<a href="<?php echo htmlspecialchars($_smarty_tpl->tpl_vars['link']->value->getPageLink('my-account',true), ENT_QUOTES, 'UTF-8', true);?>
" title="<?php echo smartyTranslate(array('s'=>'View my customer account','mod'=>'blockuserinfo'),$_smarty_tpl);?>
" class="account" rel="nofollow"><span><?php echo $_smarty_tpl->tpl_vars['cookie']->value->customer_firstname;?>
 <?php echo $_smarty_tpl->tpl_vars['cookie']->value->customer_lastname;?>
</span></a>
	</div>

et je n'ai pas de fichier /thèmes/votre_theme/modules/blockpermanentlinks/blockpermanentlinks-header.tpl

En revanches dans /thèmes/votre_theme/modules/blockuserinfo/nav.tpl j'ai bien la balise span non vide :

<span>{$cookie->customer_firstname} {$cookie->customer_lastname}</span>

Donc je ne vois pas trop où sont les 2 erreurs à corriger ligne 33 et 34 :/

Link to comment
Share on other sites

curieux, cela voudrait dire que la variable $cookie n'est pas encore définie lors de l'appel au hookdisplaynav alors qu'elle est toujours définie dans le frontController....

image.png.fdcbcde99188a7134a868eacc00cd88b.png

Un autre module doit la supprimer.

Pouvez-vous regarder quels sont les modules hookés sur le displaynav dans Modules -> positions ?

Link to comment
Share on other sites

C'est la même chose . J'ai testé aussi en dégreffant le bloc panier. Idem.

Pareil par rapport à bloc contact.

Aucun soucis si je mets dans le displaytop (sous le menu) par contre.... mais j'aimais vraiment la configuration de tout positionner en haut (comme la plupart des sites)

image.png.8df777e2e1f7381309c5b169e482ac6d.png

 

Link to comment
Share on other sites

Donc le problème vient d'ailleurs.

Pour votre cas précis, modifiez la fonction hookDisplayNav() comme ceci dans blockuserinfo.php:

	public function hookDisplayNav($params)
	{
		 $this->context->smarty->assign(array(
							'cookie' => $this->context->cookie
							));
		return $this->display(__FILE__, 'nav.tpl');
	}

Et dites-nous

Link to comment
Share on other sites

C'est un patch mais ce n'est pas normal de devoir l'ajouter. Comme expliqué plus haut, cette variable est assignée par Prestashop en tout premier. Il y a donc du code quelque part qui supprime cette variable et il serait bon de savoir qui/quoi/où/comment et pourquoi....

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...