Jump to content

Modification image Pailpal dans le HOOK_PAYMENT de la page paiement


Recommended Posts

Bonjour,

 

Je souhaite utiliser l'image (que j'ai nomé différement) de paypal que j'ai créé et qui est affiché dans l'étape 5 de paiement, le code est dans le div HOOK_PAYMENT mais j'ai  trouver pour cette page "monsite/commande?multi-shipping=" dans  les fichiers de mon thème de prestashop 1.5.6.2.

la page monSite\modules\paypal\views\templates\hook\express_checkout_payment.tpl

cette page express_checkout_payment.tpl contient la boucle if suivante :

{if isset($use_mobile) && $use_mobile}
			<img src="{$base_dir_ssl}modules/paypal/img/logos/express_checkout_mobile/CO_{$PayPal_lang_code}_orange_295x43.png" />
		{else}
			{if isset($logos.LocalPayPalHorizontalSolutionPP) && $PayPal_payment_method == $PayPal_integral}
				<img src="{$logos.LocalPayPalHorizontalSolutionPP}" alt="{$PayPal_content.payment_choice|escape:'htmlall':'UTF-8'}" height="48px" />
			{else}
				<img src="{$logos.LocalPayPalLogoMedium}" alt="{$PayPal_content.payment_choice|escape:'htmlall':'UTF-8'}" />
			{/if}

On vois que pour l'image "FR_bnr_horizontal_solution_PP_327wx80h.gif" que je souhaite modifier et renommer différement, elle est appelé dans le code ci-dessus ainsi 

src="{$logos.LocalPayPalHorizontalSolutionPP}

vue quelle est appelée dynamiquement et c'est ce que je ne comprends pas (dans l'écriture du code mais pas dans le principe), elle n'est pas appelée par son nom complet qui est "FR_bnr_horizontal_solution_PP_327wx80h.gif"

 

Si vous pouvez m'expliquer, se serait top ! et je pourrai faire la modification que je souhaite...

 

Merci !

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

Bonjour,

Vous pouvez remplacer le

src="{$logos.LocalPayPalHorizontalSolutionPP}

par une adresse URL de votre image ex:

src="http://monsite.com/modules/paypal/img/ma_nouvelle_image.jpg"

à mon avis, le code l'image est stocké dans du PHP est envoyé à SMARTY.

Vous pouvez aussi modifier le code PHP de paypal pour attribué le nouveau nom de l'image mais si vous ne savez pas trop coder je vous le déconseille.

Link to comment
Share on other sites

Ok merci je vais voir ça.... Si je peux te demander un autre turc (je sais j'abuse ;-)

 

bon cela concerne le logo Paypal qui est afficher dans la colonne de gauche de mon site sous mon menu donc présent dans bcp de pages, le truc c'est depuis la mise à jour demandé par Paypal pour la version 3.8, j'ai eu le logo qui à changer, j'utilisé le logo horizontal (logo rectangle) et maintenant j'ai le logo verticale qui s'affiche. 

Donc ni une, ni deux je vais dans la ma page monSite\modules\paypal\paypage_logos.php et regarde la fonction :

public function getCardsLogo($vertical = false)
	{
		$logos = $this->getLogos();

		$orientation = $vertical === true ? self::VERTICAL : self::HORIZONTAL;
		$logo_ref = self::LOCAL.'PayPal'.$orientation.'SolutionPP';

		if (array_key_exists($logo_ref, $logos))
			return $logos[$logo_ref];
		elseif (($vertical !== false) && isset($logos[self::LOCAL.'PayPal'.self::HORIZONTAL.'SolutionPP']))
			return $logos[self::LOCAL.'PayPal'.self::HORIZONTAL.'SolutionPP'];

		if (isset($logos['default'][self::LOCAL.'Local'.$orientation.'SolutionPP']))
			return _MODULE_DIR_._PAYPAL_MODULE_DIRNAME_.$logos['default'][self::LOCAL.'Local'.$orientation.'SolutionPP'];

		return false;
	}

J'ai bien sur la ligne 73 $vertical = false donc je devrai avoir l'image horizontal qui s'affiche et là c'est pas le cas...

 

Donc je vais dans l'administration => Paramètres avancès => Performance et je sélectionne 'Forcer la compilation à chaque appel" puis pour le cache je sélectionne la X et clique sur Effacer le cache de smarty....

 

Puis j'actualise ma page home de mon sir (F5) mais que n'est ni toujours le logo verticale qui apparaît :angry: GRRRRRRRR

 

Merci de vos lumière !!!!

Link to comment
Share on other sites

En fait, c'est pas la qu'il faut regarder,

la methode

public function getCardsLogo($vertical = false)

dit que si il n'y a pas de paramètre rentré la $vertical sera false,

par contre dans ton hook tu doit avoir

$this->getCardsLogo(true)

ou quelque chose du genre, si tu trouve d'ou ça vient passe le true à false et ça devrait être bon.

Link to comment
Share on other sites

Dans le fichier paypal.php

regarde au niveau de 

public function hookRightColumn()
	{
		$this->context->smarty->assign('logo', $this->paypal_logos->getCardsLogo(true));
		return $this->fetchTemplate('column.tpl');
	}

tu as bien le 

$this->paypal_logos->getCardsLogo(true)

essaye de le remplacer par

$this->paypal_logos->getCardsLogo(false)
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...