Блоги. Количество просмотров блога.

#1 2 июня 2011 в 10:29
На версии 1.6.2 у меня это работало:
1.в com_blog_view_posts.tpl {$post.hits}
2. в model —
public function increaseHits($blog_post_id) {
$this->inDB->query("UPDATE cms_blog_posts SET hits = hits + 1 WHERE id = $blog_post_id");
return true;
}
3. мускуль
SELECT COUNT( * ) AS `Строки`, `hits`
FROM `cms_blog_posts`
GROUP BY `hits`
ORDER BY `hits`
LIMIT 0, 30

Сейчас на пашет (

Заработало таки...
Еще нужно во frontend.php добавить — $model->increaseHits($post['id']);

ЗЫ. ИМХО, желательно бы добавить просмотры всего, что просматривается юзерами в оф релиз 8)
#2 2 июня 2011 в 11:23

желательно бы добавить просмотры всего, что просматривается юзерами в оф релиз 8)

Очень Серый
+1
#3 13 февраля 2012 в 12:24
Может кто подскажет как организовать такое на версии 1.9.только подробнее роспишите плиз, а то я новачок и неочень ещо смыслю в етом.
#4 13 февраля 2012 в 13:50

1.в com_blog_view_posts.tpl {$post.hits} 2. в model — public function increaseHits($blog_post_id) { $this->inDB->query("UPDATE cms_blog_posts SET hits = hits + 1 WHERE id = $blog_post_id"); return true; } 3. мускуль SELECT COUNT( * ) AS `Строки`, `hits` FROM `cms_blog_posts` GROUP BY `hits` ORDER BY `hits` LIMIT 0, 30 Сейчас на пашет ( Заработало таки… Еще нужно во frontend.php добавить — $model->increaseHits($post['id']);

...

и еще надо поле добавить (у меня в 1.9 дефолт) его не оказалось…
в cms_blog_posts — hits
#5 13 февраля 2012 в 15:21
сделал, сейчас глаз есть и у записей в блогах)
для 1.9 так :
в файле components\blogs\model.php —
в любом пустом месте добавить функцию:

public function increaseHits($post_id) {
$this->inDB->query("UPDATE cms_blog_posts SET hits = hits + 1 WHERE id = $post_id");
return true;
}

в frontend.php :
примерно после строчки :
$smarty->display('com_blog_view_post.tpl');

добавляем :

$model->increaseHits($post['id']);

Все !

потом в нужном месте в шаблоне, в файлах com_blog_view_posts.tpl (последние) и com_blog_view_post.tpl (просмотр записи)
вставить {$post.hits} в нужное место — это и будет кол-во просмотров ..

а, и перед этим надо в базе в cms_blog_posts добавить поле "hits", тип можно например int.
#6 8 апреля 2013 в 12:16
KS,
  1. public function increaseHits($post_id) {
  2. $this->inDB->query("UPDATE cms_blog_posts SET hits = hits + 1 WHERE id = $post_id");
  3. return true;
  4. }
А здесь точно все правильно написано? ибо у меня ошибка с указанием на эту строчку
Parse error: syntax error, unexpected T_PUBLIC in Z:\home\obz\www\components\blogs\model.php on line 13:
#7 8 апреля 2013 в 12:59

А здесь точно все правильно написано? ибо у меня ошибка с указанием на эту строчку
Parse error: syntax error, unexpected T_PUBLIC in Z:\home\obz\www\components\blogs\model.php on line 13:

Таня
Указанный код вставьте вовнутрь класса, то есть в блок class cms_model_blogs{}. Например, сразу же по после 16 строчки
  1. class cms_model_blogs{
Судя по строке ошибки (13), вы вставили до блока класса.
#8 8 апреля 2013 в 14:26

ИМХО, желательно бы добавить просмотры всего, что просматривается юзерами в оф релиз

Йо чин Пын
тоже "за!" для конечных страниц желательно видеть кол-во просмотров, анализировать проще не выходя с сайта)
#9 8 апреля 2013 в 23:09
Марат, спасибо! KS сказал в любое пустое место))

Ошибки нет, но и просмотры не выводятся.
У кого-нибудь получилось по этой схеме?
#10 9 апреля 2013 в 05:33

KS сказал в любое пустое место))

Таня
в любое пустое место для движка 1.9 )
#11 9 апреля 2013 в 06:40


KS сказал в любое пустое место))

Таня
в любое пустое место для движка 1.9 )

KS

А для 1.10.1 не подскажите как сделать?
#12 9 апреля 2013 в 09:58

Указанный код вставьте вовнутрь класса, то есть в блок class cms_model_blogs{}. Например, сразу же по после 16 строчки

Марат

Марат а может это в движок на треке вставить?
#13 9 апреля 2013 в 10:48

в любое пустое место для движка 1.9 )

KS
Да, у меня 1,9 и ничего не работает.
#14 9 апреля 2013 в 16:12

Да, у меня 1,9 и ничего не работает.

Таня

а поле в базу добавили?

в cms_blog_posts — hits

KS
#15 9 апреля 2013 в 16:21
Зачем вы все в коробку хотите запихать? Такое точно нельзя в коробку. Все что делает лишние запросы к базе должно ставиться как дополнение.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.