php - Magento 最近查看的产品

标签 php mysql magento product mage

我试过的。只是获取查看的产品并显示它,结果我什么都没有:

 <?php $_recentlyViewed =
 Mage::getSingleton('Mage_Reports_Block_Product_Viewed')-> getItemsCollection(); ?>

     <?php foreach ($_recentlyViewed as $_recentlyProduct): ?>
         <?php var_dump($_recentlyProduct); ?>
     <?php endforeach; ?>

接下来,它试图显示默认 block ,然后我一无所获。在 local.xml 中我添加了:

<?xml version="1.0"?>
<layout version="0.1.0">
    <catalog_product_view>
        <reference name="content">
            <reference name="product.info"> 
                <block type="reports/product_viewed" name="product.recently.viewed" as="product_recently_viewed" template="reports/product_viewed.phtml"/> 
                <block type="poll/activePoll" name="right.poll" after="product_recently_viewed">
                    <action method="setPollTemplate"><template>poll/active.phtml</template><type>poll</type></action>
                    <action method="setPollTemplate"><template>poll/result.phtml</template><type>results</type></action>
                </block>
           </reference>
    </reference>
</catalog_product_view>

<?php echo $this->getChildHtml('product_recently_viewed'); ?>

在 view.phtml 中,但我仍然一无所获。 我查看了mysql中的表,有关于最后查看产品的记录。所以我的问题是,是什么让我错了?有什么想法吗?

最佳答案

你已经使用了 getSingleton 尝试使用这个:

 <?php $_recentlyViewed =
 Mage::getModel('Mage_Reports_Block_Product_Viewed')-> getItemsCollection(); ?>

 <?php foreach ($_recentlyViewed as $_recentlyProduct): ?>
     <?php var_dump($_recentlyProduct); ?>
 <?php endforeach; ?>

通过使用getModel,我认为你的工作可以实现

关于php - Magento 最近查看的产品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36045414/

相关文章:

mysql NOT IN查询

magento - 在布局 XML 更新中更新 block 类型

magento 开源整页缓存

Magento 获取根类别 url

php - 在 Laravel 中从数据库存储和加载 JSON 的最佳方法

PHP 比较运算符和 if (!foo()) 形式的语句

PHP 为 Smarty 选择

php - MySQL 列 PHP 中的最大值

mysql - 在同一查询中使用 MAX() 和 COUNT()

php - 理解 PHP/mysql 中的递归