对于一个B2B Magento网站,当注册一个新的客户端,我想使字段“公司”必需的。我应该编辑哪个文件?多谢了。
xwmevbvl1#
您还应该将其添加到服务器端的属性中。如果您使用的是Magento企业版,您只需通过后台编辑公司属性,设置为必填即可。如果您使用的是社区版,则需要使用SQL手动更改此值。在eav_attribute表中,attribute_code为company,您只需将is_required设置为1即可。
eav_attribute
attribute_code
company
is_required
1
eufgjt7s2#
除了haltabush答案(这是正确的答案),这里是懒惰开发人员的SQL:
UPDATE eav_attribute SET is_required = 1 WHERE attribute_code = 'company';
au9on6nz3#
对于客户通讯录部分(注册客户):
/app/design/frontend/base/default/template/customer/address/edit.phtml
结账部分:
/app/design/frontend/base/default/template/checkout/onepage/billing.phtml
对于结帐运输部分:
/app/design/frontend/base/default/template/checkout/onepage/shipping.phtml
注册部分:
/app/design/frontend/base/default/template/customer/form/register.phtml/app/design/frontend/base/default/template/customer/form/address.phtml对于必填字段,查找看起来像以下行:
class="input-text validate-email required-entry"
ccgok5k54#
这是如何做到这一点使用安装程序.正确的方式来做它在magento.这适用于企业版和comunity版.但你将不得不有模块配置为了解sql文件夹下的文件
<?php $installer = new Mage_Customer_Model_Entity_Setup('core_setup');; $installer->startSetup(); $installer->run("UPDATE eav_attribute SET is_required = 1 WHERE attribute_code = 'company';"); $installer->endSetup();
这就是我的模块xml文件的样子。
<?xml version="1.0" encoding="UTF-8"?> <config> <modules> <Package_Customer> <version>1.1.0.4</version> </Package_Customer> </modules> <global> .... <resources> <package_customer_setup> <setup> <module>Package_Customer</module> </setup> </package_customer_setup> </resources> .... </global>
这就是我编辑.phtml使其动态化的方法
<li class="wide"> <?php $validation_class = $this->helper('customer/address')->getAttributeValidationClass('company') ; $required = strstr($validation_class, 'required-entry'); ?> <label for="company" class=<?php echo $required?"required":""?>><?php echo $this->__('Company') ?> <?php echo $required?"<em>*</em>":""?> </label> <div class="input-box"> <input type="text" name="company" id="company" title="<?php echo $this->__('Company') ?>" value="<?php echo $this->escapeHtml($this->getAddress()->getCompany()) ?>" class="input-text <?php echo $validation_class ?>" /> </div> </li>
pxq42qpu5#
您可以在Stores > Settings > Configuration中找到它,然后在Customers > Customer Configuration下,您会在“名称和地址选项”选项卡下找到“显示公司”选项。它看起来像这样:
Stores > Settings > Configuration
Customers > Customer Configuration
将该选项设置为必填将使公司成为所有地址表单中的必填字段。
5条答案
按热度按时间xwmevbvl1#
您还应该将其添加到服务器端的属性中。
如果您使用的是Magento企业版,您只需通过后台编辑公司属性,设置为必填即可。
如果您使用的是社区版,则需要使用SQL手动更改此值。在
eav_attribute
表中,attribute_code
为company
,您只需将is_required
设置为1
即可。eufgjt7s2#
除了haltabush答案(这是正确的答案),这里是懒惰开发人员的SQL:
au9on6nz3#
对于客户通讯录部分(注册客户):
/app/design/frontend/base/default/template/customer/address/edit.phtml
结账部分:
/app/design/frontend/base/default/template/checkout/onepage/billing.phtml
对于结帐运输部分:
/app/design/frontend/base/default/template/checkout/onepage/shipping.phtml
注册部分:
/app/design/frontend/base/default/template/customer/form/register.phtml
/app/design/frontend/base/default/template/customer/form/address.phtml
对于必填字段,查找看起来像以下行:
ccgok5k54#
这是如何做到这一点使用安装程序.正确的方式来做它在magento.这适用于企业版和comunity版.但你将不得不有模块配置为了解sql文件夹下的文件
这就是我的模块xml文件的样子。
这就是我编辑.phtml使其动态化的方法
pxq42qpu5#
有一个后台设置(版本号2.4.5-p1)。
您可以在
Stores > Settings > Configuration
中找到它,然后在Customers > Customer Configuration
下,您会在“名称和地址选项”选项卡下找到“显示公司”选项。它看起来像这样:
将该选项设置为必填将使公司成为所有地址表单中的必填字段。