结帐步骤 - 第一步“个人信息.tpl”有一个用于登录或创建帐户的表格。
我需要修改此表单的字段 - 实际上修改表单。有一个性别广播输入,我不想让前任看到。或生日日期字段。
所以我在override/classes中创建了文件夹表单并放在那里CustomerFormatter.php类-覆盖表单类(因为我不想修改Presta核心文件)
我想:
private $ask_for_birthdate = true;
private $ask_for_partner_optin = true;
private $partner_optin_is_required = true;
代表是否显示表单字段 - 但似乎这是错误的.. (已将
$ask_for_birthday
设置为 false,但生日日期字段仍然存在于表单中)
我错过了什么?如何控制结帐页面上的表单中显示哪些表单字段?
更新 我发现表单中的生日可以在PS选项中关闭。 但是当我对覆盖性别字段进行更改时,它们仍然存在。
当我在 classes/form/CustomerFormatter.php 中进行更改时 - 它的行为应如此,但在:
覆盖/classes/form/CustomerFormatter.php - 什么也没发生....
我正在研究 PS 8.04
我发现了问题并将分享解决方案。
1 - 覆盖类必须扩展核心 - 我缺少这一点 - 这就是为什么在类中所做的更改没有任何作用的原因。
所以
override/classes/form/CustomerFormatter.php
应该以开头
class CustomerFormatter extends CustomerFormatterCore
菜鸟错误..
2 - 正如@ébewè 所指出的 您可以通过以下方式禁用 BO 中的性别: