Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Magento:选择产品属性后SKU编号发生变化_Magento_Attributes_Product_Sku - Fatal编程技术网

Magento:选择产品属性后SKU编号发生变化

Magento:选择产品属性后SKU编号发生变化,magento,attributes,product,sku,Magento,Attributes,Product,Sku,选择项目的产品属性后,如何更改SKU编号 要在可配置产品页面上获取所选关联产品的sku,请在脚本的app/design/frontend///template/catalog/product/view/type/options/configurable.phtml中粘贴以下代码: spConfig.getIdOfSelectedProduct = function() { var existingProducts = new Object(); for(var i=this.

选择项目的产品属性后,如何更改SKU编号


要在可配置产品页面上获取所选关联产品的sku,请在脚本的app/design/frontend///template/catalog/product/view/type/options/configurable.phtml中粘贴以下代码:

spConfig.getIdOfSelectedProduct = function()
  {
    var existingProducts = new Object();
    for(var i=this.settings.length-1;i>=0;i--)
    {
     var selected = this.settings[i].options[this.settings[i].selectedIndex];
     if(selected.config)
     {
     for(var iproducts=0;iproducts<selected.config.products.length;iproducts++)
     {
      var usedAsKey = selected.config.products[iproducts]+"";
      if(existingProducts[usedAsKey]==undefined)
      {
       existingProducts[usedAsKey]=1;
      }
      else
      {
       existingProducts[usedAsKey]=existingProducts[usedAsKey]+1;
      }
      }
     }
    }
    for (var keyValue in existingProducts)
    {
    for ( var keyValueInner in existingProducts)
     {
     if(Number(existingProducts[keyValueInner])<Number(existingProducts[keyValue]))
     {
      delete existingProducts[keyValueInner];
     }
     }
    }
    var sizeOfExistingProducts=0;
    var currentSimpleProductId = "";
    for ( var keyValue in existingProducts)
    {
    currentSimpleProductId = keyValue;
    sizeOfExistingProducts=sizeOfExistingProducts+1
    }
    if(sizeOfExistingProducts==1)
    {
    alert("Selected product is: "+currentSimpleProductId)
    }

  }
spConfig.getIdOfSelectedProduct=function()
{
var existingProducts=新对象();
对于(var i=this.settings.length-1;i>=0;i--)
{
var selected=this.settings[i].options[this.settings[i].selectedIndex];
if(selected.config)
{
对于(var-iproducts=0;iproducts)
  • 转到Magento管理员
  • 在目录>管理属性中,查找sku并查找类似于“在前端的产品视图页面上可见”的内容
  • 这将从产品页面中删除sku
  • 找到可配置的产品模板,并插入您想要的SKU位置

    echo$product->getSku()


  • 这是哪种类型的产品?我指的是带有自定义选项的简单产品或可配置产品?用于可配置产品。这个答案不正确,上面的代码不遵循Magento编码实践-例如,在控制器中使用getBaseUrl而不是getUrl,$\u请求。除非您真的需要,否则不要乱搞Magento可配置JS脚本我不得不这么做!
    jQuery.ajax({
        type: "POST",
        url: "<?php echo $this->getBaseUrl()?><module_front_name>/<controller_name>/<action_name>/",
        data:"id="+currentSimpleProductId,
        success: function(msg)
        {
            alert(msg);
            //var data = JSON.parse(msg);
            //alert(data.id);
        }
    });
    
    public function <action_name>Action()
        {
            $productId = $_REQUEST['id'];
            /*$productId is your selected product id. do what ever you want to do here.*/
            $product = Mage::getModel('catalog/product')->load($productId);
            $productsku = $product->getSku();
    
            $arraygroup = array("sku"=>$productsku);
            echo json_encode($arraygroup);
        }