Skip to main content
`'is_wysiwyg_enabled'` property enables the WYSIWYG editor
Source Link

I have use this script to add custom attribute in products.

It's working fine for me.

/** @var EavSetup $eavSetup */
 $eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);

 /**
 * Add attributes to the eav/attribute
 */
  
$eavSetup->addAttribute(
    \Magento\Catalog\Model\Product::ENTITY,
        'shop_by_brand',
        [
            'type' => 'text',
            'backend' => '',
            'frontend' => '',
            'label' => 'Shop by Brand',
            'input' => 'textarea',
            'class' => '',
            'source' => '',
            'backend' => 'Magento\Eav\Model\Entity\Attribute\Backend\ArrayBackend',
            'global' => \Magento\Catalog\Model\ResourceModel\Eav\Attribute::SCOPE_GLOBAL,
            'visible' => true,
            'required' => false,
            'user_defined' => false,
            'default' => 0,
            'searchable' => false,
            'filterable' => true,
            'comparable' => false,
            'visible_on_front' => true,
            'used_in_product_listing' => true,
            'is_wysiwyg_enabled'      => TRUE,
            'unique' => false,
            'apply_to' => ''
        ]
    );

I have use this script to add custom attribute in products.

It's working fine for me.

/** @var EavSetup $eavSetup */
 $eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);

 /**
 * Add attributes to the eav/attribute
 */
  
$eavSetup->addAttribute(
    \Magento\Catalog\Model\Product::ENTITY,
        'shop_by_brand',
        [
            'type' => 'text',
            'backend' => '',
            'frontend' => '',
            'label' => 'Shop by Brand',
            'input' => 'textarea',
            'class' => '',
            'source' => '',
            'backend' => 'Magento\Eav\Model\Entity\Attribute\Backend\ArrayBackend',
            'global' => \Magento\Catalog\Model\ResourceModel\Eav\Attribute::SCOPE_GLOBAL,
            'visible' => true,
            'required' => false,
            'user_defined' => false,
            'default' => 0,
            'searchable' => false,
            'filterable' => true,
            'comparable' => false,
            'visible_on_front' => true,
            'used_in_product_listing' => true,
            'unique' => false,
            'apply_to' => ''
        ]
    );

I have use this script to add custom attribute in products.

It's working fine for me.

/** @var EavSetup $eavSetup */
 $eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);

 /**
 * Add attributes to the eav/attribute
 */
  
$eavSetup->addAttribute(
    \Magento\Catalog\Model\Product::ENTITY,
        'shop_by_brand',
        [
            'type' => 'text',
            'backend' => '',
            'frontend' => '',
            'label' => 'Shop by Brand',
            'input' => 'textarea',
            'class' => '',
            'source' => '',
            'backend' => 'Magento\Eav\Model\Entity\Attribute\Backend\ArrayBackend',
            'global' => \Magento\Catalog\Model\ResourceModel\Eav\Attribute::SCOPE_GLOBAL,
            'visible' => true,
            'required' => false,
            'user_defined' => false,
            'default' => 0,
            'searchable' => false,
            'filterable' => true,
            'comparable' => false,
            'visible_on_front' => true,
            'used_in_product_listing' => true,
            'is_wysiwyg_enabled'      => TRUE,
            'unique' => false,
            'apply_to' => ''
        ]
    );
Source Link
Dharmendra Jadav
  • 2.4k
  • 1
  • 18
  • 33

I have use this script to add custom attribute in products.

It's working fine for me.

/** @var EavSetup $eavSetup */
 $eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);

 /**
 * Add attributes to the eav/attribute
 */
  
$eavSetup->addAttribute(
    \Magento\Catalog\Model\Product::ENTITY,
        'shop_by_brand',
        [
            'type' => 'text',
            'backend' => '',
            'frontend' => '',
            'label' => 'Shop by Brand',
            'input' => 'textarea',
            'class' => '',
            'source' => '',
            'backend' => 'Magento\Eav\Model\Entity\Attribute\Backend\ArrayBackend',
            'global' => \Magento\Catalog\Model\ResourceModel\Eav\Attribute::SCOPE_GLOBAL,
            'visible' => true,
            'required' => false,
            'user_defined' => false,
            'default' => 0,
            'searchable' => false,
            'filterable' => true,
            'comparable' => false,
            'visible_on_front' => true,
            'used_in_product_listing' => true,
            'unique' => false,
            'apply_to' => ''
        ]
    );