📅  最后修改于: 2023-12-03 15:32:47.554000             🧑  作者: Mango
在 Magento 2 中,我们可以通过自定义属性来为商品、顾客、订单等添加自定义字段。该操作需要使用 Magento 框架提供的数据收集方法。本文将介绍如何使用 Magento 2 Magento 框架数据收集添加属性。
首先,我们需要创建一个 InstallData.php 文件,该文件负责添加新的自定义属性。
<?php
namespace Vendor\ModuleName\Setup;
use Magento\Framework\Setup\ModuleContextInterface;
use Magento\Framework\Setup\ModuleDataSetupInterface;
use Magento\Framework\Setup\InstallDataInterface;
use Magento\Eav\Setup\EavSetupFactory;
use Magento\Eav\Setup\EavSetup;
class InstallData implements InstallDataInterface
{
private $eavSetupFactory;
public function __construct(EavSetupFactory $eavSetupFactory)
{
$this->eavSetupFactory = $eavSetupFactory;
}
public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
{
$setup->startSetup();
$eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);
$eavSetup->addAttribute(
\Magento\Catalog\Model\Product::ENTITY,
'custom_attribute',
[
'type' => 'text',
'label' => 'Custom Attribute',
'input' => 'textarea',
'required' => false,
'global' => \Magento\Eav\Model\Entity\Attribute\ScopedAttributeInterface::SCOPE_GLOBAL,
'visible' => true,
'user_defined' => true,
'group' => 'Product Details',
'sort_order' => 100,
]
);
$setup->endSetup();
}
}
在上面的示例中,我们添加了一个自定义属性 "custom_attribute",类型为 "text",输入类型为 "textarea",在产品详情页下的 "Product Details" 组别中显示。
接下来,我们需要使用 Magento CLI 运行安装脚本。在命令行中,输入以下命令:
php bin/magento setup:upgrade
此命令将更新 Magento 数据库和模式,以包含新添加的自定义属性。
最后,我们可以在产品详情页中显示新的自定义属性。打开产品编辑页面,你应该能够看到新添加的 "Custom Attribute" 字段。
使用 Magento 2 Magento 框架数据收集添加属性是一种非常简单的方法,可以轻松为 Magento 2 中的任何模型添加自定义属性。在本文中,我们覆盖了添加自定义属性的基本步骤,以及如何通过 Magento CLI 来运行安装脚本。