首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Prestashop第三方支付集成

Prestashop第三方支付集成
EN

Stack Overflow用户
提问于 2014-10-30 16:37:54
回答 2查看 378关注 0票数 0

我正在尝试实现与prestashop的第三方支付集成。我已经使用了universepay模块来获得基本的支付模块。然而,我需要知道如何获得购物车项目和金额的值,以便我可以传递给我的第三方付款provider.In,这些数据是哪个文件?有人能帮上忙吗?

EN

回答 2

Stack Overflow用户

发布于 2014-11-03 05:07:27

请参阅此挂钩列表:

http://doc.prestashop.com/display/PS15/Hooks+in+PrestaShop+1.5

这是PrestaShop中可用钩子的(几乎)完整列表。如果您需要找到在给定时刻执行的钩子(例如,当您被重定向到订单确认页面时),请转到Hook.php类,搜索exec()方法,然后搜索error_log($hook_name);。知道了要使用的钩子后,在模块中创建一个函数:

代码语言:javascript
运行
复制
public function hook{HOOKNAME}($args){
   error_log(print_r($args, 1));
}

这样你就会知道传递给钩子函数的参数是什么。最有可能的是,如果你选择了一些与订单确认相关的钩子,你会有一个向下传递给你的order对象,它将拥有你需要的关于订单的所有信息。

票数 0
EN

Stack Overflow用户

发布于 2015-05-07 20:56:04

如果您正在创建自己的支付模块来执行此操作,则由于您的模块将执行extend PaymentModule操作,因此您可以在生成支付按钮列表时使用payment钩子来获取此信息。

代码语言:javascript
运行
复制
class MyPaymentModule extends PaymentModule {

  public function __construct() {
    $this->name = 'My Payment Module';
    ...
  }

  public function install() {
    return (bool)$this->registerHook('payment');
  }

  public function hookPayment( $aParams ) {
    $oCart = $aParams['cart'];
    $aProducts = $oCart->getProducts();
    ...
    $sHtmlPaymentButton = '<b>My Payment Module</b>';
    return $sHtmlPaymentButton;
  }
}

显然,需要大量额外的代码和艰苦的工作,才能将上面的代码片段转换为一个有效的支付模块,但希望它能为您的问题提供答案,并为您提供一个良好的起点。

或者,如果您需要商店中所有付款模块的此信息,则可以从PaymentModule类的validateOrder函数中访问此信息,方法是使用override/classes文件夹中此类文件的覆盖副本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26648345

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档