【问题标题】:Magento2 Get Simple SKU When AddToCartMagento2 在 AddToCart 时获取简单的 SKU
【发布时间】:2018-05-21 15:37:59
【问题描述】:

我试图在添加到购物车时获取简单产品的 SKU。 我有一个可配置的产品,它有 3 个尺寸选项 S、M、L。每个都有自己的 SKU,当我选择一个尺寸并点击添加到购物车时,我想获取简单产品的 sku。

我查看了 js 文件 catalog-add-to-cart.js 它不返回简单的 sku,只返回可配置的 sku。

但是在控制台中有来自http://mywebsite.com/customer/section/load/?sections=cart%2Cmessages&update_section_id=true的回复

其中包含简单的 sku。

有人可以告诉我一种快速捕获简单 sku 的方法吗?

提前致谢!

【问题讨论】:

    标签: php magento e-commerce magento2


    【解决方案1】:

    我使用这个小调整是为了获得简单产品的 SKU,而不是如果有多种尺寸或颜色的可配置产品

    //By default, use the default product image
    $path = Mage::helper('catalog/image')->init($product, 'small_image');
    
    //BUT
    //If there is multiple colors/sizes
    if (is_array($product["_cache_instance_products"])){
       //For each product in the inventory
       foreach ($product["_cache_instance_products"] as $_prod ) {
         //check if the SKU match with the one of the article in the Cart
         if($_prod["sku"]==$product->getSku()){
            //check if this product have various color
            if (isset($_prod["small_image"])){
               //if so, take the specific image
               $path = Mage::helper('catalog/image')->init($_prod, 'small_image');
               }
            }
         }
     }
    

    这段代码放在:shop/app/code/community/Mdl/Ajaxcheckout/controllers/IndexController.php

    希望对你有帮助

    【讨论】:

    • 嗨卢卡斯,感谢您的回复。我不相信您的解决方案对我有用,因为它似乎适用于 Magento 1.x,但我使用的是 2.x
    • 哦,我不知道它是如此不同。非常遗憾。希望你会发现
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多