Prestashopフォーラムでこの質問をしましたが、まだ回答がありません。
mailalertモジュールで使用される新しい注文メールにsagepayコードを追加できるようにする必要があります。
私が持っているのは;
// Filling-in vars for email
$template = 'new_order';
$subject = $this->l('New order');
$spvtxc = Db::getInstance()->ExecuteS("SELECT vendortxcode FROM `"._DB_PREFIX_."sagepay_transactions` WHERE id_cart = '$order->id_cart'");
...
$templateVars = array(
'{firstname}' => $customer->firstname,
'{lastname}' => $customer->lastname,
...
'{sagepay_no}' => $spvtxc,
...
);
トランザクションをテストするたびに、$spvtxcは「ARRAY」を返します。私が試してみました;
$spvtxc = '5';
予想どおり、これはsagepay番号として5を返すので、変数が呼び出されて電子メールに追加されていると確信しています。そして、私は試しました。
$spvtxc = Db::getInstance()->ExecuteS("SELECT vendortxcode FROM `"._DB_PREFIX_."sagepay_transactions` WHERE id_cart = '2'");
したがって、これは$ spvtxcをそこに明確に存在する値に設定する必要があります(データベースに手動で追加しました)が、それでも「ARRAY」が返されます。
私が見逃したことを誰かが指摘できれば、それは非常に高く評価されます。