3

我刚刚使用以下代码以编程方式创建了一个新的根类别:

$category = new Mage_Catalog_Model_Category();
$category->setStoreId(0);
$category->setName('Storybloks6');
$category->setUrlKey('storyblocks6');
$category->setIsActive('1');
$category->setIncludeInMenu('0');
$category->setDescription('Produtos que aparecem em destaque no carrossel da home');
$category->setDisplayMode('PRODUCTS');
$category->setIsAnchor('0');
$category->setLevel('1');
$category->setParentId('1');

$parentCategory = Mage::getModel('catalog/category')->load('1');
$category->setPath($parentCategory->getPath()); 
$category->save();

类别已添加,但在管理类别页面中,其标签未出现在菜单上: 新类别在菜单上显示为 (0) 新类别在菜单上显示为 (0)。我该如何解决?

4

2 回答 2

0

检查您是否在同一商店(管理商店 - 代码 0)的后端查看类别树,或者可能是另一个没有设置标签的商店。

于 2012-07-26T21:11:27.233 回答
-1

在 Magento 根文件夹中创建一个名为 somename.php 的文件,并将以下代码粘贴到该文件中并保存。只需通过您的网络浏览器运行脚本。它应该创建一个类别“汽车”-它在 1.4.2.0 上对我有用。

<?php
require_once 'app/Mage.php';
Mage::app('default'); // Default or your store view name.

//get a new category object
$category = Mage::getModel('catalog/category');
$category->setStoreId(0); // 0 = default/all store view. If you want to save data for a specific store view, replace 0 by Mage::app()->getStore()->getId().

//if update
if ($id) {
  $category->load($id);
}

$general['name'] = "Cars";
$general['path'] = "1/3"; // 1/3 is root catalog
$general['description'] = "Great new cars";
$general['meta_title'] = "Cars"; //Page title
$general['meta_keywords'] = "car, automobile";
$general['meta_description'] = "Some description to be found by meta search robots.";
$general['landing_page'] = ""; //has to be created in advance, here comes id
$general['display_mode'] = "PRODUCTS_AND_PAGE"; //static block and the products are shown on the page
$general['is_active'] = 1;
$general['is_anchor'] = 0;
$general['url_key'] = "cars";//url to be used for this category's page by magento.
$general['image'] = "cars.jpg";


$category->addData($general);

try {
    $category->save();
    echo "Success! Id: ".$category->getId();
}
catch (Exception $e){
    echo $e->getMessage();
}
于 2012-07-31T16:56:20.090 回答