首页 文章

如何在magento中获取捆绑产品的捆绑项目

提问于
浏览
1

我有一个捆绑产品,我通过管理面板添加了3个捆绑项目(类型复选框) . 捆绑项中的2个只有一个选项,而第三个选项有7个选项(每个都是简单的产品) .

现在我有一种情况,我需要显示我已添加到第三个捆绑产品的简单产品的名称,而不是整个捆绑项目(默认情况) . 我已经尝试了很多,我找不到解决方案它

提示:复选框默认显示在文件app / design / frontend / base / default / template / bundle / catalog / product / view / type / bundle / option / checkbox.phtml中定义,我想我们需要在这里编写代码这个文件 .

请帮帮我们..我真的需要一个解决方案..

1 回答

  • 1

    是的......我想我找到了解决方案 . 我添加了一个名为'LLC'的捆绑项目,并添加了简单的产品作为复选框..我需要做的是显示我在LLC捆绑项目下添加的简单产品的名称,而不是显示LLC及其复选框(默认情况) .

    显示复选框的方式在文件中定义:app / design / frontend / base / default / template / bundle / catalog / product / view / type / bundle / option / checkbox.phtml

    所以我已经定义了一个像这样的函数..

    <?php 
    
    if($this->htmlEscape($_option->getTitle())=="LLC")
    {
         $current_product=Mage::registry('current_product');
         echo $this->getpackagedetails($current_product,$this->htmlEscape($_option->getTitle()));
    
     }
    
     ?>
    

    在这里你可以看到,我检查了捆绑项目的名称是否是LLC . 如果是的话,得到当前产品给一个变量,然后我调用的函数“getpackagedetails()”,这是在复选框的块定义,你可以在这里找到/应用/代码/核心/法师/包/座/目录/产品/View/Type/Bundle/Option.php . 此函数传递两个参数:当前产品和捆绑项目名称 .

    现在将我们的函数添加到块文件中 . 它在下面给出 .

    <?php
    
     public function getpackagedetails($currentproduct,$optid)
     {
            $display="";
            $bundled = Mage::getModel('catalog/product');
            $bundled->load($currentproduct->getId());
    
            $selectionCollection = $bundled->getTypeInstance(true)->getSelectionsCollection(
            $bundled->getTypeInstance(true)->getOptionsIds($bundled), $bundled);
    
            foreach($selectionCollection as $option)
            {
                $sku=$option->getSku();
                if($optid=="LLC" && $optid==$bistype)
                {
                    if(strpos($sku,"llc")!== false)
                    {
                        $display.=$option->getName();
                    }
                }
    
            }
            return($display);
      }
    

    我在这里做的是我使用变量$ bundled加载了我当前的产品 . 然后我得到我添加到我的捆绑产品的所有选择类型选项到变量$ selectionCollection . 为了单独选项对应于LLC捆条,我已经检查是否存在在每个选项的SKU“LLC”字符串(所有简单的产品对应于LLC束条,在那里SKU我已成立“LLC”字符串) . 如果是,请将名称存储到变量$ display中 . 然后返回变量 .

    而已 . 现在,您只能看到我为名称为LLC的捆绑项添加的简单产品名称 .

相关问题