2014-10-20 2 views
1

Я использую magento 1.9, и я пытаюсь отобразить виды продукта на странице просмотра продукта.Magento - Количество просмотров продукта?

Вот что код я использую прямо сейчас, но это ничего не показывает:

<?php $_helper = $this->helper('catalog/output'); ?> 
<?php $_product = $this->getProduct(); ?> 
<?PHP echo $_product->getViews();?> 

Можно ли отображать количество взглядов отображаемого продукта или где я делаю неправильно.

Заранее благодарен!

+0

'views' не является атрибутом, который загружается с продуктом, или вообще существует. Вероятно, вам нужно создать какую-то пользовательскую логику, чтобы получить подсчеты из таблицы 'log_url_info'. –

ответ

1

Вы можете создать наблюдателя для catalog_product_load_after и добавить views в $_data массив с

$product = $observer->getEvent()->getProduct(); 
$resource = Mage::getSingleton('core/resource'); 
$read  = $resource->getConnection('core_read'); 
$select = $read->select() 
    ->from(
     $resource->getTableName('log/url_info_table'), 
     'COUNT(*) views' 
    ) 
    ->where('url LIKE "%catalog/product/view/id/' . $product->getId() . '"'); 

$result = $read->query($select)->fetch(); 

$product->setData('views', $result['views']); 
+0

Мой URL-адрес продукта выглядит следующим образом: http://mymagento.com/708042.html Что-то меняет код или нет? – user2942786

+0

Нет, Magento хранит полный контроллер/действие url –

+0

Когда я выполняю этот код, я получаю сообщение об ошибке - Неустранимая ошибка: вызов функции-члена getEvent() для объекта без объекта – user2942786

Смежные вопросы