"Самый популярный" вид


Я создал представление, в котором должны быть перечислены 5 самых популярных историй на моем сайте, поэтому я отсортировал их по статистике узлов: общее количество просмотров и включил несколько типов контента в фильтры. Единственная проблема заключается в том, что представление проверяет только истории в первом выбранном типе контента и игнорирует все остальные. Есть ли что-то, что я делаю неправильно?

Вот экспорт представления:

$view = new view;
$view->name = 'popular';
$view->description = '';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->override_option('fields', array(
  'created' => array(
    'label' => '',
    'alter' => array(
      'alter_text' => 0,
      'text' => '',
      'make_link' => 0,
      'path' => '',
      'link_class' => '',
      'alt' => '',
      'prefix' => '',
      'suffix' => '',
      'target' => '',
      'help' => '',
      'trim' => 0,
      'max_length' => '',
      'word_boundary' => 1,
      'ellipsis' => 1,
      'html' => 0,
      'strip_tags' => 0,
    ),
    'empty' => '',
    'hide_empty' => 0,
    'empty_zero' => 0,
    'date_format' => 'small',
    'custom_date_format' => '',
    'exclude' => 0,
    'id' => 'created',
    'table' => 'node',
    'field' => 'created',
    'relationship' => 'none',
  ),
  'title' => array(
    'label' => '',
    'alter' => array(
      'alter_text' => 0,
      'text' => '',
      'make_link' => 0,
      'path' => '',
      'link_class' => '',
      'alt' => '',
      'prefix' => '',
      'suffix' => '',
      'target' => '',
      'help' => '',
      'trim' => 0,
      'max_length' => '',
      'word_boundary' => 1,
      'ellipsis' => 1,
      'html' => 0,
      'strip_tags' => 0,
    ),
    'empty' => '',
    'hide_empty' => 0,
    'empty_zero' => 0,
    'link_to_node' => 1,
    'exclude' => 0,
    'id' => 'title',
    'table' => 'node',
    'field' => 'title',
    'override' => array(
      'button' => 'Override',
    ),
    'relationship' => 'none',
  ),
));
$handler->override_option('sorts', array(
  'totalcount' => array(
    'order' => 'DESC',
    'id' => 'totalcount',
    'table' => 'node_counter',
    'field' => 'totalcount',
    'override' => array(
      'button' => 'Override',
    ),
    'relationship' => 'none',
  ),
));
$handler->override_option('filters', array(
  'type' => array(
    'operator' => 'in',
    'value' => array(
      'news' => 'news',
      'story' => 'story',
      'opinion' => 'opinion',
      'video' => 'video',
    ),
    'group' => '0',
    'exposed' => FALSE,
    'expose' => array(
      'operator' => 'type_op',
      'label' => 'Node: Type',
      'use_operator' => 0,
      'identifier' => 'type',
      'optional' => 1,
      'single' => 1,
      'remember' => 0,
      'reduce' => 0,
    ),
    'id' => 'type',
    'table' => 'node',
    'field' => 'type',
    'relationship' => 'none',
  ),
));
$handler->override_option('access', array(
  'type' => 'none',
));
$handler->override_option('cache', array(
  'type' => 'none',
));
$handler->override_option('items_per_page', 5);
$handler = $view->new_display('block', 'Block', 'block_1');
$handler->override_option('block_description', '');
$handler->override_option('block_caching', -1);
Author: Laxman13, 2011-07-13

2 answers

Убедитесь, что подсчет просмотров содержимого включен в настройках журнала доступа (admin/reports/settings). Если это не включено, все представления содержимого будут равны 0.

Count content views

 3
Author: Laxman13, 2011-07-13 15:29:28

Возможно, вы захотите рассмотреть модуль радиоактивности Модуль радиоактивности , который дает более точное и актуальное представление о текущем популярном контенте на сайте.

Проблема с использованием общих просмотров заключается в том, что со временем самый старый контент всегда будет отображаться в верхней части списка, поскольку он существует дольше. В то время как с модулем радиоактивности он использует систему баллов и радиоактивность "halflife" для ранжирования контента. Таким образом, это даст истинное отражение о текущих тенденциях вашего сайта.

Здесь есть удобное видео , которое все это объясняет.

Надеюсь, это поможет!

 3
Author: thatboyjim, 2011-07-13 17:29:13