2012-07-26 276 views
3

编程添加新的分类名称我刚刚创建了一个新的根类编程方式使用此代码:的Magento没有显示在管理员

$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(); 

类别添加,但在管理分类页面,它标签没有出现在菜单上: new category appears as (0) on menu 新菜单在菜单上显示为(0)。我该如何解决它?

+0

的方式......你应该使用'$类=法师:: getModel( '目录/类别');' – Alex 2012-07-26 21:07:51

+0

嗨@Alex,我想这种方式。同样的问题。当我到那里并以管理员身份保存(0)时,它会修复。我仍在寻找解决方案。 – 2012-07-26 22:13:51

回答

0

检查您是否在同一商店(管理员商店 - 代码0)中查看后端的类别树,或者可能是未设置标签的其他商店。

+1

是的,它是为不同的商店设置的。但是,既不改为正确的,它仍然无法正常工作。无论如何,谢谢你的时间。 – 2012-07-26 21:58:47

-1

在Magento根文件夹中创建一个名为somename.php的文件,并将以下代码粘贴到文件中并保存。只需通过您的网页浏览器运行脚本。它应该创建一个类别“Cars” - 它在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(); 
}