如何以编程方式将属性添加到magento1.9中的产品?

时间:2017-07-01 18:14:59

标签: php magento zend-framework migration magento-1.9

我是Magento的初学者,我使用的是Magento1.9 CE, 我想以编程方式在目录/产品中添加属性。 我的意思是,我想在橙色框中看到它,我在

上突出显示

This Image

我在magento / app / code / core / Mage / Catalog / etc / config.xml文件中更改版本

`<modules>
    <Mage_Catalog>
        <version>1.6.0.0.19.1.15</version>
    </Mage_Catalog>
 </modules>`

我添加此文件/magento/app/code/core/Mage/Catalog/sql/catalog_setup/mysql4-data-upgrade-1.6.0.0.19.1.15.php

$installer = $this;
$installer->startSetup();
$installer->addAttribute('catalog_product', 'promotion', array(
    'group'             => 'promotion',
    'type'              => 'text',
    'backend'           => 
    'catalog/product_attribute_backend_promotion',
    'frontend'          => '',
    'label'             => 'promotion',
    'input'             => 'text',
    'class'             => '',
    'source'            => '',
    'global'            => Mage_Eav_Model_Entity_Setup::SCOPE_GLOBAL,
    'visible'           => true,
    'required'          => false,
    'user_defined'      => false,
    'default'           => '',
    'searchable'        => false,
    'filterable'        => false,
    'comparable'        => false,
    'visible_on_front'  => false,
    'unique'            => false,
    'apply_to'          => 'simple,virtual',
    'is_configurable'   => false
));

当我刷新添加产品页面时,在数据库core_resource表中,catalog_setup版本更改为1.6.0.0.19.1.15但是没有任何内容发生在eav_attribute

如何在eav_attribute表中添加“促销”?

2 个答案:

答案 0 :(得分:1)

您不应该更改核心模块中的任何内容。 首先,您需要在magento中创建一个本地模块,然后才能以编程方式添加产品属性。这是添加属性的正确方法。

此链接可帮助您创建产品属性

http://inchoo.net/magento/programatically-create-attribute-in-magento-useful-for-the-on-the-fly-import-system/

https://magento.stackexchange.com/questions/162595/programmatically-add-custom-product-attribute-to-attribute-set

如果您不知道在magento中创建新模块,请参阅此URL

http://inchoo.net/magento/programming-magento/magento-hello-world-module-extension/

如果您需要进一步的帮助,请问我。

答案 1 :(得分:0)

Step1:首先创建一个php文件。

Step2:在文件中写下代码。

<?php 
require_once('app/Mage.php');
Mage::app()->setCurrentStore(Mage::getModel('core/store')->load(Mage_Core_Model_App::ADMIN_STORE_ID)); 
$installer = new Mage_Eav_Model_Entity_Setup('core_setup');
$installer->startSetup();
$installer->addAttribute('catalog_product', 'custom_att', array(
            'group'           => 'General',
            'label'           => 'Custom att',
            'input'           => 'text',
            'type'            => 'varchar',
            'required'        => 0,
            'visible_on_front'=> 1,
            'filterable'      => 0,
            'searchable'      => 0,
            'comparable'      => 0,
            'user_defined'    => 1,
            'is_configurable' => 0,
            'global'          => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
            'note'            => '',
));
$installer->endSetup();
?>

步骤3:将此文件放在root上并通过url运行此文件。然后创建产品属性。<​​/ p>