Количество просмотров товара
Добавлено: 18.04.2017, 16:28
api/Products.php
в функции get_products ищем запрос
добавляем в SELECT выбор еще одного поля p.views и того выходит
в функции get_product тоже правим запрос
На
также в этом классе добавляем функцию
В phpmyadmin выполняем запрос к БД
правим view/ProductView.php
После
добавляем
Правки в шаблоне:
product.tpl и products.tpl
в удобном для Вас месте добавляем
в функции get_products ищем запрос
Код: Выделить всё
$query = "SELECT
p.id,
p.url,
p.brand_id,
p.name,
p.annotation,
p.body,
p.position,
p.created as created,
p.visible,
p.featured,
p.meta_title,
p.meta_keywords,
p.meta_description,
b.name as brand,
b.url as brand_url
FROM __products p ......
добавляем в SELECT выбор еще одного поля p.views и того выходит
Код: Выделить всё
$query = "SELECT
p.id,
p.url,
p.brand_id,
p.name,
p.annotation,
p.body,
p.position,
p.created as created,
p.visible,
p.featured,
p.meta_title,
p.meta_keywords,
p.meta_description,
p.views,
b.name as brand,
b.url as brand_url
FROM __products p ......
в функции get_product тоже правим запрос
Код: Выделить всё
$query = $this->db->placehold("SELECT DISTINCT
p.id,
p.url,
p.brand_id,
p.name,
p.annotation,
p.body,
p.position,
p.created as created,
p.visible,
p.featured,
p.meta_title,
p.meta_keywords,
p.meta_description
На
Код: Выделить всё
$query = $this->db->placehold("SELECT DISTINCT
p.id,
p.url,
p.brand_id,
p.name,
p.annotation,
p.body,
p.position,
p.created as created,
p.visible,
p.featured,
p.meta_title,
p.meta_keywords,
p.meta_description,
p.views
также в этом классе добавляем функцию
Код: Выделить всё
* Функция вносит +1 к просмотру товара
/**
* @param $id
* @retval object
*/
public function update_views($id)
{
$this->db->query("UPDATE __products SET views=views+1 WHERE id=?", $id);
return true;
}
В phpmyadmin выполняем запрос к БД
Код: Выделить всё
ALTER TABLE `s_products` ADD `views` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0' AFTER `featured`
правим view/ProductView.php
После
Код: Выделить всё
// Выбираем товар из базы
$product = $this->products->get_product((string)$product_url);
if(empty($product) || (!$product->visible && empty($_SESSION['admin'])))
return false;
}
добавляем
Код: Выделить всё
if($product->visible && empty($_SESSION['admin']))
$this->products->update_views($product->id);
Правки в шаблоне:
product.tpl и products.tpl
в удобном для Вас месте добавляем
Код: Выделить всё
<small>Просмотров: {$product->views}</small>