Есть ли такой модуль, "недавние просмотры"?

Аватар пользователя Обухов Никита

Здрасте. Есть ли такой модуль, который сохранял бы просмотры пользователя? То есть можно было бы получить ноды, которые недавно просмотрел юзер.

Ключевые слова:
Версия Drupal:
0 Thanks

Комментарии

Аватар пользователя ivcons
ivcons 7 лет назад

Не то вы советуете человеку по-моему. Нужно узнать что смотрел конкретный человек.

Аватар пользователя ivcons
ivcons 7 лет назад

Vladimir_VVV

Ткните уже меня носом в конкретную ссылку где бы я увидел что пользователь Vladimir_VVV просмотрел сегодня на сайте drupal.ru

Аватар пользователя sadmin
sadmin 7 лет назад

сделайте выборку из {accesslog} по uid пользователя, и выводите title и/или hostname

Аватар пользователя IrinaStasuk
IrinaStasuk 2 года назад

У меня после подключения модуля статистики на странице http://мой сайт/user/***/track/navigation
появляется закладка "Проследить посещения страницы". Там и смотрю где был юзер

Аватар пользователя ivcons
ivcons 7 лет назад

Вот блин как оказывается все просто!!!

Спасибо IrinaStasuk! Буду знать

Аватар пользователя IrinaStasuk
IrinaStasuk 7 лет назад

Всегда пожалуйста!

Аватар пользователя Обухов Никита
Обухов Никита 7 лет назад
sadmin написал:
сделайте выборку из {accesslog} по uid пользователя, и выводите title и/или hostname

Ну тогда уж по session id

Аватар пользователя sadmin
sadmin 7 лет назад
Обухов Никита написал:
Ну тогда уж по session id

по uid через http://api.drupal.ru/api/function/statistics_user_tracker/6
А по session id имеете в виду {sessions} sid? А потом по идентификатору сеанса через тот же {accesslog}? Так длиннее получится

Аватар пользователя Обухов Никита
Обухов Никита 7 лет назад
sadmin написал:
по uid через http://api.drupal.ru/api/function/statistics_user_tracker/6
А по session id имеете в виду {sessions} sid? А потом по идентификатору сеанса через тот же {accesslog}? Так длиннее получится

У гостей нет uid, я имею ввиду session_id()

В общем уже свою статистику сделал, т.к. выбирать из accesslog дольше (там вообще придется по regexp), чем через свою табличку, где сохраняются только просмотры нод опр. типа.

Аватар пользователя sadmin
sadmin 7 лет назад
Обухов Никита написал:
У гостей нет uid, я имею ввиду session_id()

У гостей uid = 0. А как реализовали статистику посещения страниц пользователями используя session_id() без accesslog?

Аватар пользователя Обухов Никита
Обухов Никита 7 лет назад
sadmin написал:
У гостей uid = 0. А как реализовали статистику посещения страниц пользователями используя session_id() без accesslog?
<?php
function mymodule_nodeapi(&$node$op$a3 NULL$a4 NULL) {
  switch (
$op) {
    case 
'view':
      
$product_node_type variable_get('mymodule_product_node_type''product');
      if (
$node->type == $product_node_type) {
        
// Сохраняем статистику только для определенных ролей
        
if (user_access('access recent viewes')) {
          
$sid session_id();
          
$nid $node->nid;
          
$path $_GET['q'];
          
$time time();
          
// У одной и той же ноды несколько путей.
          // Сохраняем так, чтобы юзер попал именно туда, где смотрел ноду.
          // Если просмотренную ноду изменит администратор, в статистике изменения не отразятся.
          
db_query("UPDATE {mymodule_statistics} SET path = '%s', timestamp = %d WHERE nid = %d AND sid = '%s'"$path$time$nid$sid);
          if (!
db_affected_rows()) {
            
// Сразу записываю все что надо из полей ноды, чтобы потом вывести в блоке и на странице /track
            
global $user;
            
$uid $user->uid;
            
$price round($node->{sell_price}, 2);
            
$image $node->{field_image_cache}[0]['filepath'];
            
$title $node->title;
            
$color $node->field_product_color[0]['value'] ? $node->field_product_color[0]['value'] : '';
            
$brands_vid variable_get('mymodule_brands_vid'2);
            foreach (
$node->taxonomy as $term) {
              if (
$term->vid == $brands_vid) {
                
$brand = (integer) $term->tid;
              }
            }
            @
db_query("INSERT INTO {mymodule_statistics} (uid, sid, nid, path, title, price, image, color, brand, timestamp) values(%d, '%s', %d, '%s', '%s', %f, '%s', '%s', %d, %d)"$uid$sid$nid$path$title$price$image$color$brand$time); 
          }
        }
      }
  }
}
?>
Аватар пользователя sadmin
sadmin 7 лет назад

Спасибо, оказалось важным для понимания

Аватар пользователя IrinaStasuk
IrinaStasuk 7 лет назад

Кстати, входы, маршруты и так далее - хорошая и простая статистика у hit.ua. Очень удобно пользоваться. Более подробная, но и более сложная у гугл аналитик. Чаще сторонние статистики лучше, чем встроенные в друпал коды, да и сайт не грузят. Хотя я пользуюсь и друпаловской, чтобы посмотреть с какой страницы пришли на форму регистрации.

Аватар пользователя sadmin
sadmin 7 лет назад
IrinaStasuk написал:
Кстати, входы, маршруты и так далее - хорошая и простая статистика у hit.ua. Очень удобно пользоваться. Более подробная, но и более сложная у гугл аналитик. Чаще сторонние статистики лучше, чем встроенные в друпал коды, да и сайт не грузят

Гугл аналитиком пользуюсь, но нужен свой модуль, потому вариант Никиты понравился.