Magento - 在评论模块之外显示随机评论

Xan*_*d94 2 php magento

我正在使用Magento 1.5,我试图在我的侧边栏中添加一个小方块,用于显示产品图片,产品名称,星级和评论的部分随机产品.

我设法让Magento在侧边栏中显示一个随机产品,遗憾的是我似乎找不到根据是否有评论来选择随机产品的方法,而且我也找不到将评论摘要加载到我正在使用的侧边栏模板.

我发现了以下一段示例代码,但它只是抛出了对非对象错误的旧调用.

<?php

$storeId    = Mage::app()->getStore()->getId();

$summaryData = Mage::getModel(‘review/review_summary’)
->setStoreId($storeId)
->load($_product->getId());

/* @var $summaryData Mage_Review_Model_Review_Summary */

/*

array(
['primary_id'] => 147
['entity_pk_value'] => 166
['entity_type'] => 1
['reviews_count'] => 1
['rating_summary'] => 80
['store_id'] => 1
)
*/

?>
Run Code Online (Sandbox Code Playgroud)

如果有人有任何想法如何使这工作,将不胜感激.

提前致谢!

Dan*_*oof 10

您收到该错误的原因是您使用的引号.用'代替.

为了响应您的编辑,您可以继续使用5个随机产品进行审核:

$review = Mage::getModel('review/review');
$collection = $review->getProductCollection();
$collection
        ->addAttributeToSelect('*')
        ->getSelect()
                ->limit(5)
                ->order('rand()');
$review->appendSummary($collection);

foreach($collection as $product) {
        var_dump($product->debug());
}
Run Code Online (Sandbox Code Playgroud)

显然现在你可以这样做:

$product->getRatingSummary()
Run Code Online (Sandbox Code Playgroud)

提取评级数据等

当然,你需要创建一个块来放入它(或者糟糕的方式 - >只是把它放在一些模板中).

玩得开心 ;)

第三次编辑以回答您的问题:

/* Getting summary title / body. */
$title = $product->getTitle();
$body  = $product->getDetail();

/* To get (what I assume is) 'star' rating. */
$ratingSummary = $product->getRatingSummary();
$starRating = $ratingSummary['rating_summary'];
Run Code Online (Sandbox Code Playgroud)