Настроенный как у меня (блок и страница) вид Архива по месяцам всех документов. Точнее, на странице стоит ограничение в 100 пунктов. Я думаю, этого на ближайшие года хватит. Импортируйте этот вид в настройках Views, разрешите блок Archive и пользуйтесь. Если какие-то вопросы будут или замечания, то пишите в комментариях, хотя у меня всё работает.
-
$view = new view;
-
$view->name = 'archive';
-
$view->description = 'Display a list of months that link to content for that month.';
-
$view->tag = 'default';
-
$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');
-
'label' => 'Post date',
-
'alter_text' => 0,
-
'text' => '',
-
'make_link' => 0,
-
'path' => '',
-
'alt' => '',
-
'prefix' => '',
-
'suffix' => '',
-
'help' => '',
-
'trim' => 0,
-
'max_length' => '',
-
'word_boundary' => 1,
-
'ellipsis' => 1,
-
'html' => 0,
-
),
-
'date_format' => 'small',
-
'custom_date_format' => '',
-
'exclude' => 0,
-
'id' => 'created',
-
'table' => 'node',
-
'field' => 'created',
-
'relationship' => 'none',
-
),
-
));
-
'id' => 'created',
-
'table' => 'node',
-
'field' => 'created',
-
'order' => 'DESC',
-
'granularity' => 'second',
-
'relationship' => 'none',
-
),
-
));
-
'default_action' => 'summary desc',
-
'style_plugin' => 'default_summary',
-
'count' => 1,
-
'override' => 1,
-
'items_per_page' => '100',
-
),
-
'wildcard' => 'all',
-
'wildcard_substitution' => 'All',
-
'title' => '%1',
-
'default_argument_type' => 'fixed',
-
'default_argument' => '',
-
'validate_type' => 'none',
-
'validate_fail' => 'not found',
-
'id' => 'created_year_month',
-
'table' => 'node',
-
'field' => 'created_year_month',
-
'validate_user_argument_type' => 'uid',
-
'2' => 0,
-
),
-
'relationship' => 'none',
-
'default_options_div_prefix' => '',
-
'default_argument_user' => 0,
-
'default_argument_fixed' => '',
-
'default_argument_php' => '',
-
'poll' => 0,
-
'image' => 0,
-
'forum' => 0,
-
'page' => 0,
-
),
-
'validate_argument_node_access' => 0,
-
'validate_argument_nid_type' => 'nid',
-
'1' => 0,
-
'2' => 0,
-
'5' => 0,
-
'4' => 0,
-
),
-
'validate_argument_type' => 'tid',
-
'validate_user_restrict_roles' => 0,
-
'validate_argument_php' => '',
-
),
-
));
-
'operator' => '=',
-
'value' => 1,
-
'group' => 0,
-
'exposed' => FALSE,
-
'operator' => '',
-
'label' => 'Published',
-
'use_operator' => FALSE,
-
'identifier' => 'status',
-
'remember' => FALSE,
-
'single' => TRUE,
-
'optional' => FALSE,
-
),
-
'id' => 'status',
-
'table' => 'node',
-
'field' => 'status',
-
'relationship' => 'none',
-
),
-
));
-
'type' => 'none',
-
'perm' => '',
-
));
-
$handler->override_option('title', 'Monthly archive');
-
$handler->override_option('items_per_page', 17);
-
$handler->override_option('use_pager', 'mini');
-
$handler->override_option('pager_element', 10);
-
$handler->override_option('use_more', 1);
-
$handler->override_option('style_options', NULL);
-
$handler->override_option('row_plugin', 'node');
-
'teaser' => 1,
-
'links' => 1,
-
'comments' => 0,
-
));
-
$handler = $view->new_display('page', 'Page', 'page');
-
$handler->override_option('path', 'month');
-
'type' => 'none',
-
'title' => '',
-
'description' => '',
-
'weight' => 0,
-
'name' => 'navigation',
-
));
-
'type' => 'none',
-
'title' => '',
-
'description' => '',
-
'weight' => 0,
-
));
-
$handler = $view->new_display('block', 'Block', 'block');
-
'default_action' => 'summary desc',
-
'style_plugin' => 'default_summary',
-
'count' => 1,
-
'override' => 0,
-
'items_per_page' => '25',
-
),
-
'wildcard' => 'all',
-
'wildcard_substitution' => 'All',
-
'title' => '%1',
-
'default_argument_type' => 'fixed',
-
'default_argument' => '',
-
'validate_type' => 'user',
-
'validate_fail' => 'not found',
-
'id' => 'created_year_month',
-
'table' => 'node',
-
'field' => 'created_year_month',
-
'relationship' => 'none',
-
'validate_user_argument_type' => 'uid',
-
'2' => 0,
-
),
-
'button' => 'Use default',
-
),
-
'default_options_div_prefix' => '',
-
'default_argument_user' => 0,
-
'default_argument_fixed' => '',
-
'default_argument_php' => '',
-
'poll' => 0,
-
'image' => 0,
-
'forum' => 0,
-
'page' => 0,
-
),
-
'validate_argument_node_access' => 0,
-
'validate_argument_nid_type' => 'nid',
-
'1' => 0,
-
'2' => 0,
-
'5' => 0,
-
'4' => 0,
-
),
-
'validate_argument_type' => 'tid',
-
'validate_user_restrict_roles' => 0,
-
'validate_argument_php' => '',
-
),
-
));
-
$handler->override_option('block_description', 'Archive list');
-
$handler->override_option('block_caching', -1);
Комментарии
Начал использовать этот
Начал использовать этот модуль для создания архива, импортировал ваше представление, все нормально. Попутно попытался сделать вывод списка терминов из словаря с подсчётом количества нод. Нигде не нашел как сделать этот посчет. А в архиве эта функция используется. Подскажите пожалуйста как это можно сделать? Где во Views спрятана эта функция?
для этого есть много решений
для этого есть много решений (разных):
http://www.drupal.ru/node/108989
http://cmspress.info/drupal/snippet/576
Пока у меня списки на
Пока у меня списки на сниппетах, но есть проблема. Если на одной странице несколько анонсов со сниппетом, то сайт выпадает. Один работает, а два уже нет. Это явно видно на примере архива по месяцам. Создал несколько страниц со списками терминов. Если дата их одним и тем же месяцем, то при выборе из архива сайт падает. Можно конечно их разнести по разным месяцам, но это как-то неправильно.
По приведенным вами ссылкам. Сниппет я уже описал, а вот решение на Views 3 у меня застопорилось, http://xandeadx.ru/blog/drupal/415
когда дохожу до пункта 4:
4. Добавляем новое поле Content: nid
У меня этого поля нет в списке предлагаемых. Что я мог упустить? Почему нет этого поля? А без него цепочка создания представления списка обрывается.
Вам надо было почитать
Вам надо было почитать комментарии к этой странице ( http://xandeadx.ru/blog/drupal/415 ), там написано:
Спасибо за подсказку! Список
Спасибо за подсказку! Список выводит так:
Термин 1
(3)
Термин 2
(10)
Термин 3
(5)
А хотелось бы вот так:
Термин 1 (3)
Термин 2 (10)
Термин 3 (5)
Как в архиве.
Цитата:Заменил его полем
Не работает. В скобках везде стоит 1. Раз ввели поле ID термина, так наверное термины и считаются, а раз термины все по одному, вот и получается при подсчете - все по 1.
Цитата:А хотелось бы вот так:
Хм... это решается уже или через CSS или в точных настройках темы. Тут уж я ничем помочь не могу... у Views много настроек и там даже можно везде вставлять свои классы для css.
Пока решил обойтись списками
Пока решил обойтись списками на сниппетах. Развел их по разным датам, чтобы в архиве новостей не глючили. Views слишком проблемный.
не знаю, не знаю... по мне
не знаю, не знаю... по мне так - чрезвычайно мощный инструмент...
не так давно делал на Views сайт для Доски Объявлений...
это просто песня, а не то, что обычно ждёшь от обычного сайта... выбор по многим параметрам, поиск...
короче, только забивай настройки и управляй выводом... мне очень понравилось работать с Views...
Здравствуйте Владимир! У меня
Здравствуйте Владимир! У меня снова появился вопрос по этому представлению, на Drupal 7. Все работает нормально. У меня в архиве выводится 17 строк (поменьше, чем у вас). Я в настройках представления выбрал: "Использовать постраничный навигатор:Полный. И: Постранично, 10 элементов. А выводятся все равно все 17. Вместо полного пробовал и Мини, то же самое. Что я делаю не так?
"Точнее, на странице стоит
"Точнее, на странице стоит ограничение в 100 пунктов". А как снять это ограничение на 100 пунктов?
Вопросов нет. Разобрался.
Вопросов нет. Разобрался.
Эхх, давно не работал с
Эхх, давно не работал с Drupal. Уже всего и не упомнишь...
Владимир, а с чем же вы
Владимир, а с чем же вы сейчас работаете? Уж не с Джумлой ли?
Нет, сейчас вообще немного
Нет, сейчас вообще немного отошёл от Друпала... некогда, а если не пользуешься, всё постепенно забывается...