如果请求的网址是简单产品,如何使用预先选择的选项显示可配置产品?
例如:
简单产品#1 具有:
颜色: Red
网址 /simple-red.html
简单产品#2 具有:
颜色: Green
网址 /simple-green.html
可配置产品具有:
网址: /config.html
如果用户访问/simple-red.html
,则应加载可配置产品,其中包含预选选项颜色: Red
如果用户访问/simple-green.html
,则应加载可配置产品,其中包含预选选项颜色: Green
答案 0 :(得分:1)
成功解决了问题:
扩展ProductController
,用父可配置产品的产品ID替换简单产品的产品ID。二手SO答案:
Magento Catalog ProductController rewrite
自定义ProductController
中的代码:
...
$productId = (int) $this->getRequest()->getParam('id');
// Get parent configurable product
$_product = Mage::getModel('catalog/product')->load($productId);
if ($_product->getTypeId() == "simple") {
$parentIds = Mage::getModel('catalog/product_type_configurable')->getParentIdsByChild($_product->getId());
// If parent exists
if (isset($parentIds[0])) {
$productId = $parentIds[0];
}
}
...
根据简单的产品预选择可配置的产品选项。已使用link to tutorial given by Vishal Sharma
结果(抱歉无法发布图片): Screenshot