Искать  
 
   
 
Сколько раз определенный пользователь просматривал определенную запись
Отправлено: 19 Август 2011 01:50 P.M.   [ Игнорировать ]
Member
Avatar
RankRankRank
Всего сообщений:  317
Зарегистрирован  2008-03-09

Можно ли стандартными средствами EE или же при помощи модуле реализовать статистику по тому, сколько раз тот или иной пользователь просматривал ту или иную запись?!

Профиль
 
 
Отправлено: 19 Август 2011 09:10 P.M.   [ Игнорировать ]   [ # 1 ]
Студент
RankRank
Всего сообщений:  131
Зарегистрирован  2010-12-14

Стандартными средствами - не знаю.
При помощи модуля - почему бы нет (но только для будущих просмотров)
Пишем модуль/плагин который при каждом вызове добавляет в таблицу запись.
На целевом шаблоне вызываем его в стиле

{exp:channel:entries ....}
{exp
:my_tracker:track entry_id="{entry_id}"}
{
/exp:channel:entries} 

Сам код плагина может быть похожим на

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

$plugin_info = array(
  
'pi_name' => 'My_tracker',
  
'pi_version' =>'1.0',
  
'pi_author' =>'Maxim Stoun',
  
'pi_author_url' => 'http://example.com',
  
'pi_description' => 'My_tracker',
  
'pi_usage' => ''
  
);
  
  Class 
My_tracker
  {
    
function track()
    
{
        $this
->EE =& get_instance(); 
        
$entry_id $this->EE->TMPL->fetch_param('entry_id');
        if (!
is_numeric($entry_id)) return;
        
$query_str 'INSERT INTO table_name (entry_id, user_id, etc) VALUES ('.$entry_id.','','')';
        
$query_res $this->EE->db->query($query_str);
    
}
  }
  
  ?> 

(это не настоящий код, а только набросок)
Посмотреть как получают id пользователя можно в коде модуля LIKEE
Ну и если это плагин, то приведется вручную создать таблицу (если модуль - желательно прописать в методе устанавливающем модуль на сайт)
Не забывайте про проверку параметров перед передачей в запрос (что бы нельзя было использовать sql-уязвимости)
Можно использовать для этого стандартную библиотеку ЕЕ для работы с запросами (помойму database class, или что то такое)

Прошлые просмотры можно попробовать получить через google analytics, или что вы используете как счетчик просмотров.
Но не уверен что даже у гугла есть такой функционал (типа показать просмотры страниц в зависимости от IP-адреса)

Профиль
 
 
Отправлено: 20 Август 2011 04:29 A.M.   [ Игнорировать ]   [ # 2 ]
Member
Avatar
RankRankRank
Всего сообщений:  317
Зарегистрирован  2008-03-09

Спасибо большое за ответ!

Профиль