输入第一个地址/在退房过程中添加一个地址时,需要“别名”字段。 (PS 1.7)

时间:2019-01-19 07:35:25

标签: php prestashop prestashop-1.7

我已经看过FormField.php和CustomerAddressFormatter.php,还不太清楚。

我想要实现的是:

在客户通过结帐添加其第一个(或以下一个)地址时显示“别名”字段。到目前为止,只有在“您的帐户”页面中编辑地址时,该字段才可见。 将“别名”字段设为必填字段。 鉴于在“您的帐户”页面之外添加地址与在帐户页面中添加地址之间的字段差异等于10比11,我认为必须存在两个不同的.php文件,并且调整必须相对较快和简单。但是,到目前为止,在花费了7个小时之后,我想我会在查找相关文件时寻求帮助。

进一步搜索后,我发现address-form.tpl包含相关部分。现在,我得到了要显示在所需位置的别名。我现在正在努力的是使其成为必需。我怀疑CustomerAddressFormatter.php是相关文件。

1 个答案:

答案 0 :(得分:0)

就像我对您的其他问题的评论一样,默认情况下,别名字段已经是必需的。

我认为原因似乎不是,CustomerAddressForm.php中的这段小代码是这样的:

if (empty($address->alias)) {
    $address->alias = $this->translator->trans('My Address', [], 'Shop.Theme.Checkout');
}

哪个字段用“我的地址”的翻译填充。因此,作为在该字段中强制输入的一种简单方法,只需删除该行即可(当然可以覆盖!)。您可能还应该添加一些真实的验证和适当的错误消息(不确定是否可能还没有)。

为此添加一些上下文:在PS版本<1.7中,默认情况下会显示别名字段。这引起了很大的不满,因为该领域对于prestashop网上商店来说是非常独特的,而且客户通常不知道它的用途。