Magento将类别选择标签添加到自定义插件

时间:2012-10-09 11:12:15

标签: magento

我使用的是Inchoo Custom Designed Gallery插件:http://inchoo.net/ecommerce/magento/magento-custom-designed-gallery/。这个插件创建了一个图库,并且可以为图库提供名称。

虽然我想将插件链接到类别选择器(以制表符形式)。因此,图库与一个类别相关联。

我已经尝试过将以下内容添加到app / code / local / Inchoo / Cpa / Block / Cat / Edit / Tabs.php中:

$this->addTab('categories', array(
                'label'     => Mage::helper('catalog')->__('Categories'),
                'url'       => $this->getUrl('*/*/categories', array('_current' => true)),
                'class'     => 'ajax',
            ));

它没有任何效果。我能做什么?我是Magento Extension Development的新手。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。不幸的是,不是以标签的形式,但我找到了一种链接到类别的方法。

转到app / code / local / Inchoo / Cpa / Block / Cat / Edit / Tab / Info.php并在addfield函数后添加一个新函数:

    $fieldset->addField('cat_select', 'select', array(
      'label'     => 'Category',
      'class'     => 'required-entry',
      'required'  => true,
      'name'      => 'cat_select',
      'values' => $this->get_categories(),
      'disabled' => false,
      'readonly' => false,
      'tabindex' => 1
    ));

添加以下功能以选择类别:

protected function get_categories(){

    $category = Mage::getModel('catalog/category'); 
    $tree = $category->getTreeModel(); 
    $tree->load();
    $ids = $tree->getCollection()->getAllIds(); 
    $arr = array();
    if ($ids){ 
    foreach ($ids as $id){ 
    $cat = Mage::getModel('catalog/category'); 
    $cat->load($id);
    $arr[$id] = $cat->getName();
    } 
    }

    return $arr;

}