Добавить новую вкладку в категории администратора - Magento - PullRequest
0 голосов
/ 03 февраля 2012

Я ищу, чтобы добавить новую вкладку под категорией в magento admin, которая загружает сетку категорий. Идея состоит в том, чтобы связать несколько категорий с одной категорией, и когда вы нажимаете на эту конкретную категорию, она должна отображать товары из всех связанных категорий. Есть ли лучшее решение, чем создать новую вкладку с сеткой категорий?

Editted

Правильно ... Я понял, что могу добавить новые поля в категорию с помощью скрипта установки. Теперь в моем скрипте установки я делаю что-то вроде этого:

public function getDefaultEntities()
{
    return array(
        'catalog_category' => array(
            'entity_model'      => 'catalog/category',
            'attribute_model'   => 'catalog/resource_eav_attribute',
            'table'             => 'catalog/category',
            'additional_attribute_table' => 'catalog/eav_attribute',
            'entity_attribute_collection' => 'catalog/category_attribute_collection',
            'attributes' => array(
                'men_categories' => array(
                    'type'              => 'int',
                    'backend'           => '',
                    'frontend'          => '',
                    'label'             => 'Men Categories',
                    'input'             => 'select',
                    'class'             => '',                        
                    'source'            => 'pushon_config/config_source',
                    'global'            => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
                    'visible'           => true,
                    'required'          => false,
                    'user_defined'      => true,
                    'default'           => 0,
                    'searchable'        => false,
                    'filterable'        => false,
                    'comparable'        => false,
                    'visible_on_front'  => false,
                    'unique'            => false,

                    'group'             => 'Associated Categories',
                ),
            ),
        ),
    );
}

В моем source.php при этом:

class PushOn_Config_Model_Config_Source extends Mage_Eav_Model_Entity_Attribute_Source_Abstract

{ protected $ _options = array ();

public function getAllOptions($withEmpty = true, $defaultValues = false)
{
    $option = Mage::getResourceModel('catalog/category_collection');

    foreach($option as $id){
        $this->_options[] = array('value'=> $id->getData('entity_id'), 'label' => $id->getData('name'));
    }

    return $this->_options;
}

}

Теперь, когда я запускаю это, он показывает мне сообщение об ошибке:

a:5:{i:0;s:163:"Error in file: "C:\wamp\www\vhosts\staging.domainname.com\httpdocs\app\code\local\PushOn\Config\sql\pushon_config_setup\mysql4-install-0.1.0.php" - Wrong entity ID.";i:1;s:1148:"#0 C:\wamp\www\vhosts\staging.domainname.com\httpdocs\app\code\core\Mage\Core\Model\Resource\Setup.php(390): Mage::exception('Mage_Core', 'Error in file: ...')

Я просто пытаюсь загрузить все категории. Есть идеи, почему это происходит?

...