【问题标题】:Removing Categories from a Produkt programmatically以编程方式从 Produkt 中删除类别
【发布时间】:2014-02-24 09:46:11
【问题描述】:

我尝试从产品中删除一个类别,但没有成功。 它仍然是该类别的产品。

这是我正在使用的代码:

    $categories = array();
    $categories[] = $this->erp['mastercat'];
    if(isset($this->erp['article']['all_categories'])){
        if(is_array($this->erp['article']['all_categories']) && count($this->erp['shop']['all_categories'])>0){
            foreach($this->erp['article']['all_categories'] as $category){
                if(!in_array($category,$categories)){
                    $categories[] = $category;
                }
            }
        }else if(!empty($this->erp['article']['all_categories'])){
            if(!in_array($this->erp['article']['all_categories'], $categories)){
                $categories[] = $this->erp['article']['all_categories'];
            }
        }
    }
    $this->product->setCategoryIds($categories);

我正在使用一个空白数组,并且只将我需要的类别放入其中。

我不明白为什么选择了以前选择的类别和新的类别(我将它在我的 erp 中从一个类别移到另一个类别)。

【问题讨论】:

标签: php mysql magento erp


【解决方案1】:

您还需要保存您的产品:

$this->product->save();

【讨论】:

    【解决方案2】:

    Keyur Shah 的链接帮助了我。 我在理解系统如何保存类别时遇到了问题。 如果您想从列表中删除一个,您需要加载所有并取消设置不再需要的类别并使用他们自己的密钥添加新的类别。 然后它工作。 ^^

    非常感谢您的帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-25
      • 1970-01-01
      • 2013-02-21
      • 2011-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多