Tambahkan atribut kategori tambahan di bawah tab informasi umum

10

Saya mencoba menambahkan attrbiute kategori tambahan ke informasi umum saya sudah mencoba menambahkan bahwa menggunakan kode berikut,

require_once("app/Mage.php");
Mage::app('default');
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);

$installer = new Mage_Eav_Model_Entity_Setup('core_setup');
$entityTypeId     = $installer->getEntityTypeId('catalog_category');
$attributeSetId   = $installer->getDefaultAttributeSetId($entityTypeId);
$attributeGroupId = $installer->getDefaultAttributeGroupId($entityTypeId, $attributeSetId);


$installer->addAttribute('catalog_category', 'nav_left',  array(
    'type'     => 'tinyint',
    'label'    => 'Show in left navgigation',
    'input'    => 'boolean',
    'global'   => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
    'visible'           => true,
    'required'          => false,
    'user_defined'      => false,
    'default'           => 0
));

$installer->addAttributeToGroup(
    $entityTypeId,
    $attributeSetId,
    $attributeGroupId,
    'nav_left',
    '11'

//last Magento's attribute position in General tab is 10
);

$attributeId = $installer->getAttributeId($entityTypeId, 'nav_left');

$installer->run("
INSERT INTO `{$installer->getTable('catalog_category_entity_int')}`
(`entity_type_id`, `attribute_id`, `entity_id`, `value`)
    SELECT '{$entityTypeId}', '{$attributeId}', `entity_id`, '1'
        FROM `{$installer->getTable('catalog_category_entity')}`;
");

Ini hanya berfungsi dengan baik tetapi ini menambahkan tab informasi tambahan bernama Generaltepat di sebelah kanan general infomation tabsaya telah mencoba menambahkannya ke tab pertama menggunakan attributeGroupIdset ke 4 tetapi setelah pengujian itu hanya menabrak situs.

Tahu bagaimana saya bisa menambahkan atribut itu ke tab pertama.

ravisoni
sumber

Jawaban:

7

Coba seperti ini:

$installer->addAttribute('catalog_category', 'nav_left', array(
    'group'         => 'General Information',
    'type'     => 'int',
    'label'    => 'Show in left navgigation',
    'input'    => 'boolean',
    'global'   => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
    'visible'           => true,
    'required'          => false,
    'user_defined'      => false,
    'default'           => 0
)); 

EDIT
$installer harus merupakan instance dari Mage_Catalog_Model_Resource_Setup.

Agak topik off: Saya sarankan menambahkan skrip ini dalam file pembaruan salah satu modul Anda daripada membuat instance Mage::app()dan menjalankannya 'on the fly'. Jika Anda memasukkannya ke dalam skrip pemutakhiran, ini portabel untuk instance lain.

Marius
sumber
Terima kasih atas jawaban Anda, tetapi setelah menjalankan ini saya mendapatkan kesalahan server di situs.
ravisoni
kesalahan apa yang kamu dapatkan? Saya mengedit jawabannya. Mungkin itu masalahnya.
Marius
file log tidak berisi apa pun yang dilaporkan file laporan. "Tabel dasar atau tampilan tidak ditemukan: 1146 Tabel 'wwwinsta_Joyevincent.catalog_category_entity_tinyint' tidak ada"
ravisoni
Okzz ini bekerja menambahkan attr tanggal di tab info umum tetapi saya mencoba menambahkan tipe ya / tidak attr ada ide untuk itu?
ravisoni
2
Saya pikir Anda sebaiknya membuat posting dengan semua pertanyaan yang Anda miliki tentang ini. Tidak ada gunanya membahasnya atas pertanyaan orang lain karena itu agak di luar topik.
Marius
5

Saya telah berhasil bekerja dengan cara yang diharapkan seperti ini.

$installer->addAttribute('catalog_category', 'left_nav',  array(
    'group'    => 'General Information',
    'type'     => 'int',
    'label'    => 'Show in left navigation',
    'input'    => 'select',
    'global'   => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
    'visible'           => true,
    'required'          => false,
    'user_defined'      => false,
    'default'           => 0,
    'source' => 'eav/entity_attribute_source_boolean'
));

Terima kasih

ravisoni
sumber
0

Anda dapat menyesuaikan atribut ya / tidak ke bagian kategori menggunakan kode berikut.

$this->addAttribute(Mage_Catalog_Model_Category::ENTITY, 'featured_product', array(
'group'         => 'General Information',
'input'         => 'select',
'type'          => 'text',
'label'         => 'Featured Product',
'backend'       => '',
'visible'       => true,
'required'      => false,
'visible_on_front' => true,
'global'        => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
'source' => 'eav/entity_attribute_source_boolean',

));

Silakan merujuk tutorial saya untuk penjelasan langkah demi langkah dan struktur file. http://www.pearlbells.co.uk/add-custom-attribute-dropdown-category-section-magento/

Liz Eipe C
sumber