Api Magento批量更新属性

Api Magento批量更新属性,api,magento,attributes,sku,Api,Magento,Attributes,Sku,我缺少通过SKU/UPC批量更新属性的SQL 运行EE1.10供参考 我有所有其余的代码工作,但我不确定谁/什么/为什么 我的逻辑是,实际上正在更新我们的属性,但还没有找到它们 是 打开CSV并将所有SKU和相关属性捕获到2d阵列中 将SKU解析为实体\u id 获取实体id和属性并运行更新,直到完成 从星期五开始,休息一天 这是我的(即将完成的)代码,非常感谢您的帮助 /** * FUNCTION: updateAttrib * * REQS: $db_

我缺少通过SKU/UPC批量更新属性的SQL

运行EE1.10供参考

我有所有其余的代码工作,但我不确定谁/什么/为什么 我的逻辑是,实际上正在更新我们的属性,但还没有找到它们 是

  • 打开CSV并将所有SKU和相关属性捕获到2d阵列中
  • 将SKU解析为实体\u id
  • 获取实体id和属性并运行更新,直到完成
  • 从星期五开始,休息一天
  • 这是我的(即将完成的)代码,非常感谢您的帮助

        /**
         * FUNCTION: updateAttrib
         * 
         * REQS: $db_magento
         * Session resource
         * 
         * REQS: entity_id
         * Product entity value
         * 
         * REQS: $attrib
         * Attribute to alter
         * 
         */
    

    查看我对工作生产代码的回复。希望这对Magento社区的人有所帮助。

    一般更新查询如下:

    UPDATE 
      catalog_product_entity_[backend_type] cpex 
    SET
      cpex.value = ? 
    WHERE cpex.attribute_id = ? 
      AND cpex.entity_id = ?
    
    要查找与属性关联的[backend_type]:

    SELECT 
      backend_type
    FROM
      eav_attribute
    WHERE entity_type_id =
      (SELECT
        entity_type_id
      FROM
        eav_entity_type
      WHERE entity_type_code = 'catalog_product')
    AND attribute_id = ?
    
    您可以从以下博客文章中获得更多信息:


    希望这能对您有所帮助。

    虽然这在技术上是可行的,但您所编写的代码几乎是您应该使用的最后一种方法

    在Magento中,您确实应该使用代码提供的模型,而不是自己编写数据库查询

    在您的情况下,如果您需要更新一个或多个产品的属性,有一种方法可以让您非常快速(并且非常安全)地完成

    如果查看:/app/code/core/Mage/Adminhtml/controllers/Catalog/Product/Action/AttributeController.php,您会发现该控制器专门用于快速更新多个产品

    如果查看saveAction()函数,您将发现以下代码行:

    Mage::getSingleton('catalog/product_action')
        ->updateAttributes($this->_getHelper()->getProductIds(), $attributesData, $storeId);
    
    此代码负责更新您想要的所有产品ID,一次只更新任何单个商店的更改属性

    第一个参数基本上是一个产品ID数组。如果您只想更新单个产品,只需将其放入数组中即可

    第二个参数是一个数组,其中包含要为给定产品更新的属性。例如,如果要将价格更新为$10,将重量更新为5,则应传递以下数组:

    array('price' => 10.00, 'weight' => 5)
    
    最后,第三个也是最后一个属性是您希望这些更新发生的存储ID。这个数字很可能是1或0


    我将使用这个函数调用,而不是编写和维护您自己的数据库查询。

    因此,如果我更新产品类(它显然与事物无关,只是外部的)这两者之间的关系如何。如果您选择将脚本放在这里,那么是的。您好,您能否提供有关如何在“mycode.php”或其他脚本中实现这一点的信息/代码?