2017-02-03 3 views
1

私は最近paypal Proサービスを有効にしましたが、今はPrestaShopバージョン1.6.1.1用に設定しています。PrestaShop。 paypalのエラーURLを設定しました

ありがとうございますページとエラーページのURLを指摘する必要があります。

ありがとうございました。問題はありませんでした。私は購入をシミュレートし、プレースホルダを置いてURLをコピーしました。

私はこれを使用:私はエラーページのURLを設定して困難を見つけ

module/paypal/submit?id_cart={id_cart}&id_module=97&id_order={id_order}&key={id_key} 

を。

テンプレート/フロントで、私はすでにこのためのtplがあることに気づいた。 とpaypal.phpに私はこの機能を見つける:

public function displayPayPalAPIError($message, $log = false) 
{ 
    $send = true; 
    // Sanitize log 
    foreach ($log as $key => $string) { 
     if ($string == 'ACK -> Success') { 
      $send = false; 
     } elseif (Tools::substr($string, 0, 6) == 'METHOD') { 
      $values = explode('&', $string); 
      foreach ($values as $key2 => $value) { 
       $values2 = explode('=', $value); 
       foreach ($values2 as $key3 => $value2) { 
        if ($value2 == 'PWD' || $value2 == 'SIGNATURE') { 
         $values2[$key3 + 1] = '*********'; 
        } 
       } 

       $values[$key2] = implode('=', $values2); 
      } 
      $log[$key] = implode('&', $values); 
     } 
    } 

    $this->context->smarty->assign(array('message' => $message, 'logs' => $log)); 

    if ($send) { 
     $id_lang = (int) $this->context->language->id; 
     $iso_lang = Language::getIsoById($id_lang); 

     if (!is_dir(dirname(__FILE__).'/mails/'.Tools::strtolower($iso_lang))) { 
      $id_lang = Language::getIdByIso('en'); 
     } 

     Mail::Send(
      $id_lang, 
      'error_reporting', 
      Mail::l('Error reporting from your PayPal module', (int) $this->context->language->id), 
      array('{logs}' => implode('<br />', $log)), 
      Configuration::get('PS_SHOP_EMAIL'), 
      null, 
      null, 
      null, 
      null, 
      null, 
      _PS_MODULE_DIR_.$this->name.'/mails/' 
     ); 
    } 

    return $this->fetchTemplate('error.tpl'); 

は、フックerror.tplでのご注文のテンプレートを呼び出し、ルーティングルールはありますか?

答えて

1

いいえルーティングルールはありません。注文コードがpayment_errorPayment Error州のテンプレート)のメールテンプレートを持っている場合、私はモジュールコードを調べることによって理解したことからエラーテンプレートが表示されます。

注文の現在の状態をPayment Errorに設定し、質問に書いたのと同じリンクにアクセスすると、エラーテンプレートが表示されるはずです。

関連する問題