Prestashop-客户注册管理模块-轻微修改

Prestashop-客户注册管理模块-轻微修改,prestashop,Prestashop,我正在努力修改客户注册管理模块中的一些代码。即时结账没有按应有的方式工作。当客户注册管理模块被禁用时,即时结帐工作正常,提交时没有错误,我们进入下一步/屏幕。启用客户注册模块后,单击“即时签出”下的“提交”按钮后,我们不会进入下一步/屏幕,而是返回到相同的屏幕,表单为空,url中有以下内容:authentication?back=order.php%3Fstep%3D1 我设法识别了一段代码,该代码阻止客户从即时结账表单进入下一屏幕。它是函数hookCreateCount($params)中的代

我正在努力修改客户注册管理模块中的一些代码。即时结账没有按应有的方式工作。当客户注册管理模块被禁用时,即时结帐工作正常,提交时没有错误,我们进入下一步/屏幕。启用客户注册模块后,单击“即时签出”下的“提交”按钮后,我们不会进入下一步/屏幕,而是返回到相同的屏幕,表单为空,url中有以下内容:authentication?back=order.php%3Fstep%3D1 我设法识别了一段代码,该代码阻止客户从即时结账表单进入下一屏幕。它是函数hookCreateCount($params)中的代码

有人知道这段代码是什么导致的吗?任何帮助都将不胜感激

具体情况:一旦用户填写即时结账表单并单击提交,表单将重定向到同一页面:/身份验证?返回=order.php%3Fstep%3D1 但它应该转到:/order?步骤=2

即时签出表单操作:

<form action="{$link->getPageLink('authentication.php', true)}?back={$back}" method="post" id="new_account_form" class="std">


那么,我应该改变动作部分吗?这是怎么回事?谁能给我指一下正确的方向吗?任何帮助都将不胜感激。

我怀疑发生冲突是因为根据定义,您的客户没有注册为单页签出功能的一部分(我假设这就是您所说的即时签出)

您可以尝试将第一块代码重构为:

global $cookie, $back;

$customer = $params['newCustomer'];
if ($customer->is_guest)
  return;

require_once (dirname(__FILE__).'/ApprovedCustomer.php');


$registration_code = pSQL(Tools::getValue('registration_code'));
if ($registration_code != '' AND $registration_code == $this->_registrationCode) {
  $customer->cleanGroups();
  $customer->addGroups ($this->_defaultGroups);
}

非常感谢你的帮助,保罗!这给了我一个开始。
global $cookie, $back;

$customer = $params['newCustomer'];
if ($customer->is_guest)
  return;

require_once (dirname(__FILE__).'/ApprovedCustomer.php');


$registration_code = pSQL(Tools::getValue('registration_code'));
if ($registration_code != '' AND $registration_code == $this->_registrationCode) {
  $customer->cleanGroups();
  $customer->addGroups ($this->_defaultGroups);
}