Php Magento-从当前查看的产品属性获取集合
我试图在产品视图页面中返回一组产品,这些产品是从当前查看的产品中获取的属性生成的 换句话说,假设我销售CD,我正在观看Ray Charles CD。Php Magento-从当前查看的产品属性获取集合,php,magento,attributes,Php,Magento,Attributes,我试图在产品视图页面中返回一组产品,这些产品是从当前查看的产品中获取的属性生成的 换句话说,假设我销售CD,我正在观看Ray Charles CD。在这个产品页面中,我想展示其他具有“艺术家”属性“Ray Charles”价值的产品。除此之外,此值必须从当前查看的产品的“艺术家”值中动态提取 我刚刚学会了这样做: <?php $model = Mage::getModel('catalog/product'); $collection = $model->getC
在这个产品页面中,我想展示其他具有“艺术家”属性“Ray Charles”价值的产品。除此之外,此值必须从当前查看的产品的“艺术家”值中动态提取 我刚刚学会了这样做:
<?php
$model = Mage::getModel('catalog/product');
$collection = $model->getCollection();;
$collection->addFieldToFilter('artist', '81');
$collection->load();
?>
它可以基于艺术家属性返回ID为“81”的产品集合。但这是静态的
我如何告诉我的收藏检查当前查看产品的“艺术家”值并使用它过滤结果
product/view.phtml
非常感谢您的帮助。产品页面已注册已查看的产品,因此您只需检索即可:
$currentProduct = Mage::registry('current_product');
$collection->addAttributeToFilter('artist', $currentProduct->getArtist());
非常感谢!成功了!你让我很开心。实际上,我有一个问题与我在上面留给你的代码有关,特别是在这里:
$collection->addFieldToFilter('artist','81')代码>我注意到,如果我使用实际值标签“Ray Charles”,则此过滤器不起作用,而仅使用该值的ID<代码>$collection->addFieldToFilter('artist','raycharles')因为某种原因,代码>不起作用。有什么想法吗?下拉式和多选式属性都存储数字索引而不是文本值。这意味着数据库要存储的数据更少,并且可以比文本更快地搜索数字。当您尝试按文本进行筛选时,它不会对喜欢的内容进行比较,因此不会返回任何内容。有趣。谢谢你的反馈和时间,你已经很了不起了。