Green Kakadu Приветствую! Спасибо огромное за работу!
да, вообще такой принцип мне больше нравится, но без жесткой привязки в "моем" случае тоже не очень удобно - некоторые настройки статьи зависят от категории (например шаблоны) + права доступа тоже привязаны к категориям. При выводе ленты с NN последними новостями в случае мультикатегорийности статей будут повторения - одна и таже статья сразу в нескольких лентах, если они окажутся на одной страницы, то не очень "правильно" это. + подобные подводные камни еще всплывут: регенерация одной статьи приведет к цепной регенерации индексов множества категорий, они же с неограниченным вложением.
В теории, чтобы избежать подобных проблем можно статью публиковать в одну основную категорию и, возможно, некоторые другие категории использовать для неё как дополнительные - затем в общей ленте выводить заголовки только по основной категории статьи, а дополнительные категории статьи использовать только при выводе лент категорий. Правда, с регенерацией всё одно так не складывается...
3. если есть идеи борьбы со спамом в комментариях на уровне скрипта - поделитесь мыслями.
- автоматический запрет комментирования в случае отсутствия данных в HTTP_ACCEPT, HTTP_ACCEPT_CHARSET, HTTP_ACCEPT_ENCODING, HTTP_CONNECTION и других типично браузерных заголовках запроса (частично поможет избавиться от автоматической публикации спама скриптами с других серверов);
- запрет публикации для одного пользователя/IP на небольшой промежуток времени (секунд 10-20 - чтоб избежать флуда);
- сравнение текста публикуемого комментария с текстом 5-10 последних уже опубликованных комментариев и последующий запрет публикации, если текст идентичен - поможет избежать случайных дублей комментариев и, опять же, поможет в борьбе с флудом;
- возможность блокировки пользователей не только по IP, но и по другим уникальным данным (скажем, уникальный md5-хэш по данным об установленных плагинах, разрешении экрана, временной зоне, navigator.userAgent и т.д. и т.п.)
Конечный урл предлогаю сделать таким: .../2005/06/22/532p1.*
наверное к этому и придем.
Насчет урлов, имхо это в некоторых случаях уже превращается в фетиш, мне кажется, чем короче - тем лучше. Была мысль прибавлять к названию файла страницы что-то по желанию автора,т.е. ../../../moj_super_rasskaz-123p1.htm но выглядит это довольно глупо
Без категории действительно удобнее, к тому же так и для подобных любителей вставлять текст в ссылки можно организовать что-то наподобие этого:
http://site.ru/2005/06/22/id_page-номер страницы/что_угодно_от_автора_статьи :-)
т.е. в директории /2005/06/22/id_page-номер страницы/ просто index.html, а дальше - что попало дописать можно...
Важный момент, касающийся прежде всего поисковиков: хорошо бы, если бы скрипт мог выдавать по
старым ссылкам правильное содержимое без помощи mod_rewrite.
Другими словами, чтоб, скажем, по запросу
http://site.com/10/1234_1.shtmlкакой-нибудь index.pl, расположенный в корневой директории site.com разбирал запрос и выдавал первую страницу статьи с id 1234.
Это важно, поскольку на ныне существующие страницы у многих, я думаю, есть ссылки с внешних сайтов. Не хотелось бы, чтобы эти ссылки стали мёртвыми...
В принципе, такое решается и через mod_rewrite или же сохранением неудалёнными старых статических страниц после обновления скрипта, но всё же чудесно было бы, если бы проблема решалась в самом скрипте.
Но это уже речь о динамике, поэтому к альфа-версии не относится :-)
OmulМожно свои пожелания в копилку? А можно сделать, чтобы шаблоны были с расширением HTM или HTML а не TXT, а то их править невозможно в дримвьюере не переименовав. Я так и делаю, и меня это напрягает больше всего. Кстати, можно ли в текущей версии так сделать? SQL - очень хорошо. Еще для полного счастья не хватает тега количества комментов к статье.
Можешь поэксперементировать следующим образом: берёшь все файлы скрипта, кроме файлов с данными, открываешь их в каком-нибудь Aditor\'e или любом другом редакторе, позволяющем автоматически производить одновременную замену по большому количеству файлов (дримвивер, по-моему, по cgi и pl файлам замену не делает при замене "по всему сайту") и просто в лоб меняешь по всем файлам "txt" на "html", потом меняешь расширение шаблонов... Должно получиться (в любом случае локально сначало поэксперементируй - сам не пробовал). Правда, так файлы для SSI-include\'ов тоже превратятся из TXT в HTML, но это не беда :-)