Уважаемые друпологи!
В каком-то посте я прочитала, что "уж новости-то можно сделать и без модуля!" Типа, это очень просто.
Но я столкнулась с несколькими проблемами, которые никак не могу разрешить. Помогите, пожалуйста!
1. Я хочу ввести понятие "дата новости". Не дата публикации новости, а дата новости. Т.е., иметь возможность внести новость задним числом. Простая вещь, на мой взгляд весьма затребованная.
Создаю поле, задаю формат. Получаю
Вс, 23.08.2009 10:14 - отображение даты поста
Sat, 18.07.2009 (All day) - отображение даты новости
Как ни кручу форматы, застрелись - Sat и все тут.
Но это полбеды, можно короткий формат использовать. Беда с архивом. Как мне объяснить модулю archive, что он на другое поле должен ориентироваться?
2. Хочу, чтобы все, что относится к новостям, шло по адресу news, а не node.
Создаю вьювер, задаю (в том числе) страницу с путем news/[nid]. Все работает. Ура! Подключаю комментарии... А там опять node и все сломалось!
3. Может, плохо искала, но хотела календарик сделать. Щелк - и вот тебе все новости на эту дату (а еще лучше не все, а только по заданной теме). Не получилось. Archive не дал календарика, Calendar заточен, похоже, под другое. Подскажите, пожалуйста, куда плыть.
Комментарии
1. Тоже бился с этим. Нужно править archive.pages.inc По поводу ориентировки на другое поле, тоже модуль нужно курочить.
2. PathAuto
3. Есть там календарик, только он выглядит вот так .
Делал новостной портал и поверьте, обойтись без посторонних модулей можно;)
1. Испробовал много путей и остановился именно на том, чтобы использовать именно дату публикации в качестве даты новости. А другую дату как раз можно сделать дополнительным полем;) Тогда сама собой решается проблема с модулем archive. Calendar лучше не использовать, т.к. уж очень медленно он работает, правда у меня новостей около 20000:). Архив я тоже чуток покромсал, в плане изменения навигации. Если у кого есть Archive с ajax-листалкой по месяцам - дайте мне:) Может как-нибудь перепишу Calendar, чтобы работал быстро.
2. Pathauto.
3. Там есть и обычный календарик в виде блока. Достаточно его просто поставить в нужное место на странице настройки блоков.
Вообще как введу портал в промышленную эксплуатацию, планирую написать свой "Use case", о том, как я и что делал:)
Не поняла. Тогда должна быть возможность отредактировать дату публикации. Такая возможность есть?
Есть, "Информация об авторе" называется
А, да! Совсем забыла. Потому как отказалась от этой идеи.
"Время создания:" можно заменить на "дата новости"? И сделать это поле обязательным, причем в начале формы?
С помощью самописного модуля - да.
Я прикрутил модуль sheduller, т.к. мне нужна возможность планировать публикацию на будущее. По умолчанию снимаете галочку с публикации и ставите программно в поле со временем публикации текущее время;)
Всем большое спасибо! Кажется, я более-менее начинаю разбираться, что к чему.
Честно сказать, освоить framework CodeIgniter оказалось быстрее и легче, чем готовую CMS Drupal
У меня не новости, а мероприятия. Но календарь работает отлично - дает то, что вы хотите. http://www.personal-trening.com/event/
trazar Зато после усваивания творить - одно удовольствие:)
IrinaStasuk У вас просто количество мероприятий небольшое. Когда счет на пару тысяч будет, тогда будет тормозить жутко, если Вы конечно модуль Calendar использовали...
Ирина! Это действительно то, что я хочу. Пара тысяч записей пока не интересует. Только у меня не получилось так сделать. Может быть, расскажете, что и как надо настроить? Если есть время, конечно.
сск+сalendar
Добавьте поле "Дата", куда вводите нужную дату. Изменяете вьюс по умолчанию (В календаре, кроме ваших полей и фильтров должны быть аргументы – год, месяц, день).
Во-первых, мне не нужны несколько тысяч прошлых мероприятий.
Во-вторых, (насколько я смогла сравнить) от увеличения количества мероприятий каждая страница вьюса не увеличивала время своей генерации... хотя возможно... несколько тысяч. У меня их парочка... тысяч
Просто речь шла о новостях же, а новости не удаляются;)
А тормоза начинаются не при генерации страницы, а при генерации самого блока календаря.
Блок календаря висит на странице, так что время его генерации входит во время генерации страницы. А для того, чтобы не висело - делаю длительный кэш. Могу себе позволить, т.к. мне не важно, чтобы информация для пользователя обновлялась сразу же после добавления материала
У нас разные задачи, о чем я несколько раз писал;) Для моего случая это не подходит, а в Вашем наоборот:)
Я очень извиняюсь, но в связи с обсуждением тормозов хочу спросить: как Drupal создает индексы? Можно ли ему сказать, что нужно сделать индекс по данному полю? Создает ли он индекс автоматически при создании поля типа Дата или при включении этого поля в Календарь?
По моему наблюдению за базой в несколько сотен тысяч записей (не Друпал) при наличии индексов никаких заметных тормозов не происходит. Без индексов тормозило жутко, но как только я создала индекс, все стало тип-топ.