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