Jump to content

[Resolu] liens depuis backoffice multiboutique


Recommended Posts

Bonjour à tous,

 

Sur ma multi-boutique j'ai remarqué que les liens envoyés par mail au client depuis le BO, pointent vers le domaine sur lequel je suis connecté en BO, et non le domaine concerné en FO.

 

Exemple:

 

multi boutique

  • www.example1.tld
  • www.example2.tld

Un client commande sur:

www.example2.tld

 

Je me connect sur le BO

www.example1.tld/admin/

 

Lorsque je vais envoyer le mail de livraison au client il receverra le mails avec le liens :..

votre facture dans "Historique des commandes" de la rubrique

avec "Historique des commandes" qui pointe vers

http://www.example1....troller=history

 

Hors le client a commandé sur

www.example2.tld

 

Et pire.

Le logo est celui de www.example2.tld mais pointe vers www.example1.tld

 

Donc:

  • Est ce un probleme de configuration de ma multiboutique?
  • Existe t il un correctif?
  • Somme nous obligé de toujours nous connecter au BO la boutique correspondante?

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

Un peu plus d'information, tous ce passe dans le fichier suivant : classes/Mail.php ligne 239 à 257 de la méthode Mail::send()

 

  if (Configuration::get('PS_LOGO_MAIL') !== false && file_exists(_PS_IMG_DIR_.Configuration::get('PS_LOGO_MAIL', null, null, $id_shop)))
$logo = _PS_IMG_DIR_.Configuration::get('PS_LOGO_MAIL', null, null, $id_shop);
  else
  {
if (file_exists(_PS_IMG_DIR_.Configuration::get('PS_LOGO', null, null, $id_shop)))
 $logo = _PS_IMG_DIR_.Configuration::get('PS_LOGO', null, null, $id_shop);
else
 $template_vars['{shop_logo}'] = '';
  }
  /* don't attach the logo as */
  if (isset($logo))
$template_vars['{shop_logo}'] = $message->attach(new Swift_Message_EmbeddedFile(new Swift_File($logo), null, ImageManager::getMimeTypeByExtension($logo)));
  $template_vars['{shop_name}'] = Tools::safeOutput(Configuration::get('PS_SHOP_NAME', null, null, $id_shop));
  $template_vars['{shop_url}'] = Tools::getShopDomain(true, true).__PS_BASE_URI__.'index.php';
  $template_vars['{my_account_url}'] = Context::getContext()->link->getPageLink('my-account', true, Context::getContext()->language->id);
  $template_vars['{guest_tracking_url}'] = Context::getContext()->link->getPageLink('guest-tracking', true, Context::getContext()->language->id);
  $template_vars['{history_url}'] = Context::getContext()->link->getPageLink('history', true, Context::getContext()->language->id);

 

En 1.5.4.0 pour cette portion de code.

Edited by Ninja Of Web (see edit history)
Link to comment
Share on other sites

Je te remercie.

 

C'est ce qui explique que la couleur et le logo soit bon mais pas les URL.

Puisque les couleurs et logo sont définit en fonction de l'$id_shop:

  $template_vars['{shop_name}'] = Tools::safeOutput(Configuration::get('PS_SHOP_NAME', null, null, $id_shop));
[...]
  $template_vars['{color}'] = Tools::safeOutput(Configuration::get('PS_MAIL_COLOR', null, null, $id_shop));

 

Alors que les url sont définit en fonction du context:

  $template_vars['{shop_url}'] = Tools::getShopDomain(true, true).__PS_BASE_URI__.'index.php';
  $template_vars['{my_account_url}'] = Context::getContext()->link->getPageLink('my-account', true, Context::getContext()->language->id);
  $template_vars['{guest_tracking_url}'] = Context::getContext()->link->getPageLink('guest-tracking', true, Context::getContext()->language->id);
  $template_vars['{history_url}'] = Context::getContext()->link->getPageLink('history', true, Context::getContext()->language->id);

Du coup il faudrait faire la même choses mais en définissant le context ou plus précisément le shop.

 

J'ai essayé de placer avant:

Shop::setContext($id_shop)

mais ca bug.

 

Et je vous pas comment par exemple récupérer :

  $template_vars['{my_account_url}'] = Context::getContext()->link->getPageLink('my-account', true, Context::getContext()->language->id);

non pas dans le context actuelle, mais en définissant la boutique.

Link to comment
Share on other sites

Bonjour,

 

Ce petit bug viens d'être corrigé par la team sur le Hub hier pour info :)

 

Pour les correctifs, voir ici :

Bonne journée et Merci a Rémi G. de la Team pour ce fix !

Loïc.

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...