我在opencart中注册时设法删除了必要的地址要求字段(此步骤不需要地址信息)。但是我已经将地址作为访客流程的结账要求。 (我认为这使注册时看起来更容易)
但是,如果您在登录时签出交付时需要地址,我希望Opencart查询并查明地址是否为空,如果是,则默认情况下应选择步骤2中的输入新地址选项。 / p>
请帮助解决有关如何执行此操作的解决方案。
答案 0 :(得分:1)
我还没有真正使用过开放式购物车,但您应该能够在结帐过程中快速检查地址是否有效。例如,首先检查用户是否已登录:
if($this->customer->isLogged())
{
}
然后,您可以使用if
检查地址,例如:
if($this->customer->isLogged())
{
$customer = $this->db->query("SELECT * FROM " . DB_PREFIX . "customer WHERE id = '" . $this->customer->id . "'");
if(!$customer->address)
{
//Customer needs to add address - show address form
}
else
{
//Customer is logged in and has address - happy shopping
}
}
请在此处查看Open Cart Database Structure,但我不认为这是完整的。
就像我说我没有使用过Open Cart,但上面的内容应该至少让你开始。您需要检查数据库表并检查该字段是否为address
,而不是address_1
,如果是这种情况,则需要更改此代码。
$customer->address
已更改为
$customer->address_1
我也不确定查询是否返回对象或数组的方式如下:
$customer->address_1
需要更改为
$customer['address_1']
您只需要从那里测试以下调试。