【问题标题】:Magento Category Import Manually Specify ID [closed]Magento 类别导入手动指定 ID [关闭]
【发布时间】:2012-06-28 20:39:17
【问题描述】:

我目前正在尝试设置一个导入脚本,该脚本将从 CSV 文件中读取带有 ID 号的类别列表,我想做的是将类别插入到默认网站的根类别中,但具有特定的 ID这样我就可以按 ID 号将产品插入到类别中。

http://www.sonassi.com/knowledge-base/quick-script-batch-create-magento-categories/

我目前正在使用上面链接中的脚本,想知道是否有人可以告诉我我在哪里插入 setId() 代码,我已经在几个地方尝试过,它只是取消了 parentId,所以所有类别是在系统的根目录中创建的,而不是在默认存储的根文件夹中。

我已将 parentId 手动设置为默认站点的主根文件夹,因此它们都应该在同一个位置创建,如果我不手动设置 ID,它会在正确的位置创建它们,所以我认为问题只是语法,唯一的问题是如果我在正确的位置创建根文件夹时没有设置它们,它们的动态类别 ID 不是必需的静态 ID。

提前致谢。 布拉德

【问题讨论】:

    标签: magento csv import categories


    【解决方案1】:

    只需在 CSV 文件中添加第三列:

    3,subcat,2700

    然后将带有 entity_id 的行添加到您的脚本中。

    $data['general']['path'] = $line[0];
    $data['general']['name'] = $line[1];
    $data['general']['entity_id'] = $line[2];
    $data['general']['meta_title'] = "";
    

    如果要将类别添加到正确的位置,还应该查看 parent_id、位置、级别和路径。

    根据您有多少类别,我会或多或少手动完成,在 csv 中再添加一列并添加如下一行:

    $data['general']['path'] = $line[3];
    

    祝你好运

    【讨论】:

    • 感谢您的快速回复,但很遗憾,这是不可能的,因为行的格式必须是特定的,以便当前类别的 id 是第一个字段。尽管我不认为这是问题所在,但我已将 $parentId 更改为静态值,然后将该列重新分配给我用来尝试设置类别 ID 的新变量。如果我没有指定 ID,则类别会在正确的位置创建,但是一旦使用 setId() 方法,它就会默认为站点的根目录,所以我想知道我是否使用了正确的方法。
    【解决方案2】:

    我遇到了完全相同的问题,如果我使用 setId() 方法(或其他设置 ID 的方式),我的类别将永远不会嵌套在其定义的父类别/路径下。我发现我必须将其分为两部分:首先设置 ID 并保存类别,然后设置路径并重新保存类别。

    $categoryID = 999;  //Your category ID
    $categoryName = 'Category Name';  //Your category name
    
    $parentCategory = Mage::getModel('catalog/category')->load(888); //Your parent category's ID
    
    //1st save with initial category information (inc. ID)
    $category = new Mage_Catalog_Model_Category();
    $category->setName($categoryName);
    $category->setId($categoryID);
    $category->setPath($parentCategory->getPath()); //Shouldn't be needed here
    $category->save();
    
    //2nd save with correct path underneath the parent category
    $category->setPath($parentCategory->getPath() . '/' . $categoryID);
    $category->save();
    

    似乎有点 hack,但我遇到的其他建议都没有任何帮助,所以我希望这对某人有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-16
      • 2015-12-29
      • 1970-01-01
      • 2015-11-27
      • 1970-01-01
      • 2020-03-05
      • 2011-03-22
      • 1970-01-01
      相关资源
      最近更新 更多