• Авторизация


Блог переехал 30-11-2008 21:57


Хочется выразить благодарность всем тем, кто посещал данный блог. Отдельное спасибо тем, кто комментировал и присылал свои мнения и советы.
Однако на данный момент я решил, что здесь блогу стало тесно - слишком мало возможностей. В связи с этим, решил сделать на основе этого дневника новый проект - phpBB Adept. Планирую много всего, но к сожалению ограничен в свободном времени, поэтому прошу отнестись с пониманием к скорости развития проекта.
комментарии: 0 понравилось! вверх^ к полной версии
phpBB Group - подход к разработке 15-11-2008 16:16


Небольшие размышления на тему подхода phpBB Group к разработке phpBB...


1. Валидация модов, правила написания модов.
Существуют правила написания модов к phpBB. Это набор синтаксиса, который применяется к инструкции по установке. Сделано это было изначально для пользования автоматического установщика модов, однако такой подход значительно облегчает жизнь и при ручной установке. Моды для phpBB имеют версию, автора, категории изменений, примерное время установки.
Валидация модов осуществляется специальной группой участников коммьюнити. Заключается она в установке мода на тестовый форум и небольшой его проверки. Если ошибок выявлено не было, то данный мод получает статус валидного мода. Валидные моды можно ставить на live forum ("живые" форумы), в то время как установка невалидных модов не рекомендуется - в инструкции есть даже специальный пункт-предупреждение.
На данный момент все инструкции по установке модов делаются в виде xml-файлов с удобной навигацией и красивым юзабельным интерфейсом.

2. Баг-трекер, тикет-система.
На официальном сайте создана очень удобная система для отлова ошибок в работе форума. Пользователь, нашедший ошибку, пишет об этом в специальный багтрекер, опционально указывая раздел. Далее эту ошибку обрабатывает человек из соответствующей группы. Все исправленные ошибки учитываются при составлении новой версии phpBB.

3. Группы.
Развитием phpBB занимается целая группа людей. Причем они в свою очередь поделены на несколько более мелких, в соответствии с выполняемой ролью. Есть Styles Team - группа, занимающаяся вопросами дизайна и графики. Есть Mods Team - группа, занимающаяся модами. Ну и еще несколько групп. В итоге это дает отличные результаты - посмотрите последнюю версию Олимпуса, он прекрасен во всех аспектах.

4. Дистрибутивы.
Собственно сам phpBB имеет четкую линейку версий, причем версии обозначаются по никсовой системе. Это достаточно удобно для ориентирования во всех выпущенных дистрибутивах. Кроме того, для скачивания доступны практически все выпущенные версии - для этого нужно лишь зайти на соответсвующий проект на sourceforge.net. Причем каждый дистрибутив пакуется в два архива - .zip и .tar.gz, и для каждого файла указывается его md5-сумма. При подробном рассмотрении версий можно увидеть, что для каждой версии есть несколько файлов - непосредственно сама версия дистрибутива, а также комплект обновлений с предыдущих в виде нескольких разновидностей. Обновление при таком подходе достаточно тривиальная задача.

5. Стили (шаблоны).
Стили для phpBB также проходят валидацию. Все валидные стили выкладываются в специальный раздел официального сайта, где их можно посмотреть в режиме онлайн-демо. Очень удобно, когда нужно выбрать какой-нибудь стиль под конкретные нужды.

6. Технологии.
phpBB Group использует последние веб-технологии, которые получили широкое распространение в сети. Это, например, xhtml - дефолтные стили форума сверстаны под xhtml 1.1 strict. В находящемся в разработке phpBB 3.2 Ascraeus будет отсутствовать поддержка php 3, php 4 и mysql 4, зато внедрена поддержка php 6 и mysql 6.
комментарии: 0 понравилось! вверх^ к полной версии

phpBB 3.0.3 - релиз состоялся 13-11-2008 00:08


Спешу всех поздравить - вышла новая версия phpBB - 3.0.3.
Список важных изменений по сравнению со второй версией:
[code] * [Fix] Correctly set topic starter if first post in topic removed (Bug #30575 - Patch by blueray2048)
* [Fix] Added VST - Venezuela Standard Time (Bug #30545).
* [Fix] Close DB connections in file.php.
* [Fix] Correctly return results for nested cached queries (Bug #31445 - Patch by faw).
* [Fix] Allow export of PM pages greater one. (#33155)
* [Fix] Display coloured username of last poster in list of subscribed forums (prosilver).
* [Fix] Do not jump back to page 1 when hiding member search in memberlist. (Bug #32515)
* [Fix] Correctly limit input of the users location to 100 characters in the UCP and ACP. (Bug #32655)
* [Fix] Sync reports when using the move all users posts tool in the ACP. (Bug #31165)
* [Fix] Remove reported flag from shadow topics when closing reports. (Bug #19765)
* [Fix] Do not show non indexed forums on the search page if they contain no subforums. (Bug #33125)
* [Fix] Stop search bots incrementing topic views. (Bug #32675 - Patch by eviL<3)
* [Fix] Use correct link for post author search. (Bug #32595)
* [Fix] Do not decrease topics counter when deleting shadow topics. (Bug #26495)
* [Fix] Send localised disapproval reasons in the recipients local language. (Bug #31645)
* [Fix] Do not display reported topic icon for shadow topics. (Bug #13970)
* [Fix] Expand shown ban reason in unban screen to fully show long entries. (Bug #16234)
* [Fix] Preserve alpha transparency for created thumbnails. (Bug #16575)
* [Fix] Use correct port delimiter for MSSQL connections in windows. (Bug #16615)
* [Fix] Do not allow setting forums parent to the forum itself. (Bug #18855)
* [Fix] Display assigned rank/avatar for guests. (Bug #19155)
* [Fix] Set secure cookie for style switcher if required. (Bug #19625)
* [Fix] Fix native full text search on postgresql while using excluding keyword matches. (Bug #19195)
* [Fix] Pass S_SEARCH_ACTION through append_sid() in search.php. (Bug #21585)
* [Fix] Correctly handle unread status of subforums (that are not shown on the index) of forums that are shown on the index. (Bug #14589)
* [Fix] Stop users from deleting posts after the edit time has passed or they have been locked. (Bug #19115)
* [Fix] Split posts target forum requires 'f_post' now instead of 'm_split'. (Bug #31015)
* [Fix] Use a distinct log message for shadow topic deletions to differentiate between normal topic deletions. (Bug #34635)
* [Fix] Fix problems with styles using an underscore within the filename. (Bug #34315)
* [Fix] Better return links when deleting topics through the MCP. (Bug #34655)
* [Fix] Add quoting support to PM history when composing a reply. (Bug #34285)
* [Fix] Use phpBB 3.1.x method for storing cached data to prevent PHP bug with our usage of var_export(). (Thanks to Techie-Micheal and HoL for pointing out possible problems)
* [Fix] Check users pm preferences for pm's sent to groups. (Bug #33245)
* [Fix] Do not allow password reminders if u_passchg permission is not given. (Bug #14806)
* [Fix] Implemented strict check for cached user permissions and existing ACL options. This fix makes sure cached permissions are valid, even if they got already cached.
* [Fix] Do not show link to user/group profiles if user has no permission to view the linked page and gets a denied message anyway. (Bug #15088)
* [Fix] Do not display last post link and sort display options for search engines. (Bug #15088)
* [Fix] Make sure users still get notifications if they set to only be notified by Jabber, but Jabber service disabled. (Bug #29715 - Patch by Paul)
* [Fix] Don't show forum subscription link on categories. (Bug #34895)
* [Fix] Display a message if no topics or forums are selected when unsubscribing. (Bug #34855)
* [Fix] Mark/unmark all links in UCP now select/unselect both subscribed topics and forums.
* [Fix] Increase board topic counter when splitting topics. (Bug #32125)
* [Fix] Display profile icons when viewing a topic, or PM when only the jabber icon is to be visible. (Bug #34755)
* [Fix] Do not send PMs with warnings if the user cannot read PMs or they are disabled. (Bug #30815)
* [Fix] Correctly convert Niels' Birthday MOD to the date format used in phpBB3. (Bug #32895)
* [Fix] Parse BBCode lists of type square, circle and disc. (Bug #35295)
* [Fix] Round the displayed percentages in polls. (Bug #32375)
* [Fix] Disable mass e-mail when e-mail is disabled. (Bug #27385)
* [Fix] Display coloured poster username of queued posts displayed on the front of the MCP.
* [Fix] Moderators can only see reports/queue/logs from forums they can actually read. (Bug #31085)
* [Fix] Correctly display topic when start parameter is
Читать далее...
комментарии: 0 понравилось! вверх^ к полной версии
phpBB 3.0.3 RC1 - релиз-кандидат 3 версии 03-11-2008 01:20


phpBB Group подготовила первый релиз-кандидат phpBB 3.0.3

Список изменений (внушает уважение своим размером :)

- [Fix] Correctly set topic starter if first post in topic removed (Bug
#30575 - Patch by blueray2048)
- [Fix] Delete avatar files (Bug #29985).
- [Fix] Preserve selection in the MCP. (Bug #31265).
- [Fix] Added VST - Venezuela Standard Time (Bug #30545).
- [Fix] Close DB connections in file.php.
- [Fix] Correctly return results for nested cached queries (Bug #31445 -
Patch by faw).
- [Fix] Allow export of PM pages greater one. (#33155)
- [Fix] Display coloured username of last poster in list of subscribed
forums (prosilver).
- [Fix] Added missing UCP language string "NO_AUTH_READ_HOLD_MESSAGE".
- [Fix] Do not jump back to page 1 when hiding member search in
memberlist. (Bug #32515)
- [Fix] Correctly limit input of the users location to 100 characters in
the UCP and ACP. (Bug #32655)
- [Fix] Sync reports when using the move all users posts tool in the
ACP. (Bug #31165)
- [Fix] Extra slash is included in the redirect url when redirecting to
the forum root directory. (Bug #33605)
- [Fix] Remove reported flag from shadow topics when closing reports.
(Bug #19765)
- [Fix] Do not show non indexed forums on the search page if they
contain no subforums. (Bug #33125)
- [Fix] Stop search bots incrementing topic views. (Bug #32675 - Patch
by eviL<3)
- [Fix] Use correct link for post author search. (Bug #32595)
- [Fix] Do not decrease topics counter when deleting shadow topics. (Bug
#26495)
- [Fix] Send localised disapproval reasons in the recipients local
language. (Bug #31645)
- [Fix] Language typos/fixes. (Bugs #27625, #30755, #34185, #32795)
- [Fix] Added missing terms parameter to search pagination. (Bug #34085)
- [Fix] Wrong table order in query obtaining posts if post id given.
- [Fix] Do not display reported topic icon for shadow topics. (Bug #13970)
- [Fix] Display popular topic based on posts within topic instead of
replies within topic. (Bug #16099)
- [Fix] Expand shown ban reason in unban screen to fully show long
entries. (Bug #16234)
- [Fix] Preserve alpha transparency for created thumbnails. (Bug #16575)
- [Fix] Use correct port delimiter for MSSQL connections in windows.
(Bug #16615)
- [Fix] Do not allow setting forums parent to the forum itself. (Bug #18855)
- [Fix] Display assigned rank/avatar for guests. (Bug #19155)
- [Fix] Set secure cookie for style switcher if required. (Bug #19625)
- [Fix] Fix native full text search on postgresql while using excluding
keyword matches. (Bug #19195)
- [Fix] Pass S_SEARCH_ACTION through append_sid() in search.php. (Bug
#21585)
- [Fix] Correctly delete message attachments. (Bug #23755)
- [Fix] Correctly handle unread status of subforums (that are not shown
on the index) of forums that are shown on the index. (Bug #14589)
- [Fix] Stop users from deleting posts after the edit time has passed or
they have been locked. (Bug #19115)
- [Fix] Split posts target forum requires 'f_post' now instead of
'm_split'. (Bug #31015)
- [Fix] Duplicate log messages for deleting a topic ('LOG_TOPIC_DELETED'
has been deprecated in favour of 'LOG_DELETE_TOPIC').
- [Fix] Use a distinct log message for shadow topic deletions to
differentiate between normal topic deletions. (Bug #34635)
- [Fix] Fix problems with styles using an underscore within the
filename. (Bug #34315)
- [Fix] Better return links when deleting topics through the MCP. (Bug
#34655)
- [Fix] Add quoting support to PM history when composing a reply. (Bug
#34285)
- [Fix] Use phpBB 3.1.x method for storing cached data to prevent PHP
bug with our usage of var_export(). (Thanks to Techie-Micheal and HoL
for pointing out possible problems)
- [Fix] Check users pm preferences for pm's sent to groups. (Bug #33245)
- [Fix] Do not allow password reminders if u_passchg permission is not
given. (Bug #14806)
- [Fix] Implemented strict check for cached user permissions and
existing ACL options. This fix makes sure cached permissions are valid,
even if they got already cached.
- [Fix] Do not show link to user/group profiles if user has no
permission to view the linked page and gets a denied message anyway.
(Bug #15088)
- [Fix] Do not display last post link and sort display options for
search engines. (Bug #15088)
- [Fix] Make sure users still get notifications if they set to only be
notified by Jabber, but Jabber service disabled. (Bug #29715 - Patch by
Paul)
- [Fix] Don't show forum subscription link on categories. (Bug #34895)
- [Fix] Display a message if no topics or forums are selected when
unsubscribing. (Bug #34855)
- [Fix] Mark/unmark all links in UCP now select/unselect both subscribed
topics and forums.
- [Fix] Increase board topic counter when splitting topics. (Bug #32125)
- [Fix] Display profile icons when viewing a topic, or PM when only the
jabber icon is to be visible. (Bug #34755)
- [Fix] Do not send PMs with
Читать далее...
комментарии: 0 понравилось! вверх^ к полной версии
phpBB - чпу ссылки с помощью мода Seo Mod 02-11-2008 11:56


Для phpBB 3 есть Seo Mod 1.0.0, прошедший валидацию на phpBB.com, однако почему-то содержащий достаточное количество недочетов. Я уже ставил его однажды, однако та попытка не увенчалась успехом, пришлось откатить форум назад и довольствоваться обычными ссылками. Но вчера выдался свободный день, решил повторить попытку.
Мод предполагает следующий функционал - все ссылки на форумы, категории, темы и сообщения приводятся к статическому виду (т.е. как .html), при этом в урл добавляется название форума или темы. Причем если с англоязычными форумами все понятно, то с русскоязычными не совсем. Ведь русский язык не может использоваться для ссылок (на данный момент, хотя скоро это изменится). Для решения этой проблемы автор мода сделал специальную функцию, действие которой аналогично транслиту. К сожалению, функция эта имеет проблемы с обработкой некоторых русских букв, поэтому использование этого мода не рекомендуется.
Я решил немного переделать мод, но чтобы он все-таки заработал. Для этого я попросту убрал вставку названия форума/темы в url. Теперь ссылка на форум с id=2 имеет вид forum/f2.html, что мне собственно и требовалось. Вот только обидно, что для этого пришлось практически каждую строчку мода переписть. Хотя с другой стороны - работает же. А это самое главное.
комментарии: 0 понравилось! вверх^ к полной версии
phpBB.com - оформление сайта 31-10-2008 22:37


На официальном сайте phpBB в шапке можно увидеть очень красивые иллюстрации, причем соответствующие каждой странице сайта - например, на странице скачивания дополнительных языков для phpBB изображены некие руны. Все эти иллюстрации - работы дизайнера Влада Герасимова (Vlad Gerasimov). Зашел на его сайт, посмотрел остальные работы - это просто шедевры!

 

Любуемся здесь

комментарии: 0 понравилось! вверх^ к полной версии
phpBB - регистрация пользователей и спам-ботов 26-10-2008 12:07


Продолжая тему спам-ботов в phpBB 3. Не стал дожидаться новых попыток спама, поэтому решил принять меры профилактики спама на своем форуме. Первой мыслью было усложнить капчу - благо настройки форума позволяют это сделать. Однако при таком раскладе капча становится настолько неудобочитаемой, что я и сам не всегда могу прочесть код с картинки. Поэтому решил пойти другим путем. На phpBB.com можно найти мод Anti-Bot Question для третьей версии phpBB, причем мод прошел валидацию. Скачал данный мод, установка заняла порядка 15 минут (с учетом перевода). В отличие от аналога для второй версии phpBB, данный мод использует всего один вопрос и два варианта ответа на него. Хотя никто не мешает периодически менять вопрос в админке форума - благо сделать это очень просто (см. скриншот).
Сразу после настройки мода я поменял настройки капчи - отключил использование библиотеки GD для ее создания. Капча при этом становится легкочитаемой. Почему я так сделал? Да потому, что думать надо прежде всего о пользователях, а только потом о спаммерах. Пусть лучше лишний спаммер проскочит, чем какой-нибудь пользователь не сможет зарегистрироваться. К тому же в связке с установленным модом anti-bot question капча уже не является единственной преградой для спаммеров, поэтому ее ослабление к наплыву спамеров на форум не приведет.
[700x281]
комментарии: 2 понравилось! вверх^ к полной версии
phpBB Ascraeus - ожидание чуда 25-10-2008 13:10


Сравнительно недавно была проведена конференция Londonvasion 2008. Она проходила в Лондоне, и туда были приглашены все желающие (разумеется, в основном это были люди, заинтересованные в развитии phpBB). Основной темой конференции стало обсуждение следующей версии phpBB, получившей кодовое название Ascraeus (по аналогии с Olympus). По нумерации данная ветка будет иметь версии 3.2.х (актуальные версии phpBB на данный момент - 2.0.23 и 3.0.2).
Факт поднятия этой темы на конференции phpBB-шников, а также долгое отсутствие какой-либо информации о phpBB 3.0.3 и сподвигло меня на создание данной темы. Как скоро ждать phpBB Ascraeus? Что нового он нам принесет?

Немного информации на эту тему нам даст недавняя запись Acyd Burn в блогах на phpBB.com.

Подробнее про phpBB Ascraeus.
комментарии: 0 понравилось! вверх^ к полной версии
Причины жалоб в phpBB Olympus 19-10-2008 22:11


В третьей версии phpBB появилась интересная возможность - пользователи могут оставлять жалобы на сообщения. Это помогает модерировать форум, что является залогом для чистоты и порядка на нем.
При создании жалобы на сообщение пользователь может выбрать повод жалобы, либо написать свою причину. Однако список поводов для жалоб по умолчанию не слишком обширен. Для того, чтобы улучшить его, нужно:
1. Зайти в администраторский раздел
2. Перейти на вкладку "Система"
3. Выбрать слева пункт "Управление жалобами"
4. Поочередно добавить новые виды жалоб.

По умолчанию есть такие причины: "Варез", "Спам", "Оффтопик" и "Другое". Я же рекомендую добавить также и такие:
Флуд
Сообщение не несет смысловой нагрузки.
Мат
Сообщение содержит матерные слова
Оскорбление
Сообщение содержит оскорбление другого пользователя
Личная переписка
Сообщение является частью личной переписки 2-3 пользователей, что засоряет тему.
Виртуал
Сообщение принадлежит виртуалу другого пользователя
Грамматика
Сообщение содержит множество грамматических ошибок.
Подпись
Подпись содержит большие изображения, либо громоздкие и неудобочитаемые шрифты.

Только не забудьте после этого сместить пункт "Другое" в самый низ списка.
комментарии: 0 понравилось! вверх^ к полной версии
meta-теги в phpBB Olympus 19-10-2008 15:02


Совсем недавно обнаружил, что на моем форуме напрочь отсутствуют ключевые слова и описание в мета-тегах. Оказалось, что они и не должны настраиваться автоматически/через админку. Прописать их можно путем редактирования файла.
Открываем styles/ваш_стиль/template/overall_header.html
Находим строки вида
code:
<meta name="keywords" content="" />
<meta name="description" content="" />

и меняем их на нечто подобное
code:
<meta name="keywords" content="ключевое слово1, ключевое слово2, через запятую" />
<meta name="description" content="краткое описание форума" />
комментарии: 0 понравилось! вверх^ к полной версии
Спам в phpBB 3 - первые ласточки 16-10-2008 19:27


Наверняка все помнят, какие были трудности с спамом во второй версии phpBB. С выходом олимпуса все админы форумов вздохнули с облегчением - новая капча была настолько хороша, что не пропускала спам-ботов. Однако ничто не вечно. Один из моих форумов всю неделю атаковали спамеры. Регистрировались, создавали одну тему с кучей ссылок и уходили.
При разборе ситуации выяснилось, что все спам-аккаунты имеют один и тот же ай-пи адрес (спасибо rxu за мод ip in topic). Соответственно было принято логичное решение - добавить этот адрес в блеклист, что и было сделано. После этих действий спам прекратился. Однако это всего лишь первая волна, думаю, что за ней последуют новые. Поэтому самое время задумываться о безопасности своих форумом, господа администраторы.
ЗЫ. Ай-пи адрес героя - 81.169.137.209. Как оказалось, наследил он не только у меня.
комментарии: 0 понравилось! вверх^ к полной версии
Меняем оформление капчи в даннео 04-10-2008 18:53


При верстке шаблона для даннео, выполненного в черных тонах, столкнулся с небольшой проблемой - стандартная captcha никак не вписывалась в окружающий дизайн. Этакое белое пятно. Непродолжительные поиски по файлам, и ситуация была исправлена. Небольшая инструкция:
Открываем файл image.php (именно он отвечает за капчу).
Находим строку
code:
var $imagebg = array(249,249,249);

Цифры в скобках - (249,249,.249) соответствуют цвету фона в системе rgb, в данном случае это белый цвет. Чтобы заменить на черный, нужно отредактировать эту строчку таким образом:
code:
var $imagebg = array(1,1,1);

А для красного фона нужно проделать такие изменения:
code:
var $imagebg = array(249,1,1);

Итак, фон мы изменили. Но есть еще и рамка вокруг изображения (это не border из css, это именно обводка в самом изображении). Чтобы изменить его, находим строку:
code:
$licolor = imagecolorallocate($image,174,174,174);

И прописываем вместо 174,174,174 код нужного нам цвета. К примеру, для синей обводки нужен код:
code:
$licolor = imagecolorallocate($image,1,1,255);


После всех этих махинаций капча прекрасно вписалась в шаблон.
комментарии: 0 понравилось! вверх^ к полной версии
Интеграция phpBB и danneo cms, небольшой хак 29-09-2008 01:58


В этот раз буду дорабатывать интеграцию phpBB 2 и danneo cms.
После установки форума и цмс, включения интеграции в админке сайта можно немного улучшить интеграцию - сделать дублирование аккаунтов при регистрации. Таким образом будет 2 независимых таблицы пользователей, которые можно в любой момент разъединить (то есть использовать отдельно только форум или только сайт).
Инструкция:
Открываем файл includes/usercp_register.php
Находим строку
PHP:

$unhtml_specialchars_replace 
= array('>''<''"''&');
font>


Добавляем после этой строки
PHP:

// for integration with danneo
$dncms_prefix "dn052";
font>



Находим строчку (примерно 657)
PHP:

$group_id 
$db->sql_nextid();
font>


Добавляем перед ней
PHP:

// for integration with danneo
            
$sql "INSERT INTO " $dncms_prefix "_users    (userid, uname, upass, umail, regdate, lastvisit, icq, msn, www, newpass, activate, active, blocked)
                VALUES (
$user_id, '" str_replace("'""''"$username) . "', '" str_replace("'""''"$new_password) . "', '" str_replace("'""''"$email) . "',  " time() . ",  " time() . ", '" str_replace("'""''"$icq) . "', '" str_replace("'""''"$msn) . "', '" str_replace("'""''"$website) . "', '', 0, 1, 0);
            if ( !(
$result = $db->sql_query($sql)) )
            {
                message_die(GENERAL_ERROR, 'Could not insert data into danneo cms users table', '', __LINE__, __FILE__, 
$sql);
         &nb


Сохраняем изменения и закрываем файл.

Примечания.
1. Последние id пользователей в обоих таблицах должны быть одинаковы. Если это не так, установите их в значение наибольшего из этих двух id.
2. Вместо dn052 укажите свой префикс таблиц даннео.
комментарии: 0 понравилось! вверх^ к полной версии
Вывод отдельной страницы на главную страницу сайта в Danneo cms 28-09-2008 14:30


Понадобилось оформить главную страничку не в виде информационного блока с последними новостями, ссылками и прочим. а в виде отдельной страницы. Для достижения этого есть несколько путей:
1. Сделать текстовый блок по центру только для главной страницы, все остальное отключить.
2. Сделать мод, выводящий лишь одну страницу, и использовать его для главной страницы.
3. Выводить на главную страницу одну из информационных страниц.

Лично мне понравились вариант 2 и 3, но реализовывать решил именно последний вариант с инфо-страницами. Приступаем.
1. Создаем нашу будущую главную страницу через apanel. Информационные страницы - Добавить страницу. Назовем ее к примеру main (соответственно файл будет main.tpl)
2. Открываем для редактирования файл /mod/home/index.php
3. Удаляем все старое содержимое файла, вставляем следующий код:
PHP:

/* ================================================== == ##
## COPYRIGHTS © DANNEO PHP TEAM ##
## ================================================== == ##
## PRODUCT : CMS(CONTENT MANAGEMENT SYSTEM) ##
## LICENSE : GNU 2(General Public License v.2) ##
## TECHNOLOGIES : PHP & MySQL ##
## WWW : www.danneo.com | www.danneo.org ##
## E-MAIL : help@danneo.com ##
## ================================================== == */
if(!defined("DNREAD")) exit();
global 
$tm,$pa,$p,$siteglobal,$api;
$contents explode('',@file_get_contents(DNBASE."cache/info/main.tpl"));
$text = (isset($contents[1])) ? $api->siteuni($contents[1]) : '';
include(
"temp/head.php");
# TITLE
$tm->parseprint(array('title'=>'<a href="index.php">Главная</a>'),
$tm->manuale['sitetitle']);
# PRINT
$tm->parseprint(array('text'=>$text),$tm->create('mod/info/info.read'));
/* ================================================== == ##
## INCLUDE ##
## ================================================== == */
include("temp/foot.php");
font>

комментарии: 1 понравилось! вверх^ к полной версии
Шаблон для danneo cms - рефакторинг html разметки 20-09-2008 17:41


Почти вся пятница ушла на переписывание .tpl файлов шаблона Default. Почти все таблицы были заменены на div. В конечном итоге код шаблона уменьшился примерно на 12-14Кб.
Что реализовано:

  • Переписаны файлы таблиц стилей, удалена куча пробелов.
  • Атрибуты внутри селекторов css расположены в алфавитном порядке, по одному на строку.
  • Коды цветов переписаны в нижнем регистре.
  • Исправлены небольшие неточности и ошибки.
  • Большая часть таблиц была удалена, вместо них теперь используются дивы.
  • Код переписан семантически, уровни вложенности отмечены символами табуляции.
  • Оформление перенесено в таблицы стилей.
  • Для изображений добавлен атрибут alt (для валидации)
  • Все записи тега <br /> исправлены на <br />
  • Амперсанды прописаны с помощью &amp;
  • Устаревший тег <font> заменен на <span>
  • Код стал меньше на 12-14Кб по сравнению с первоначальным вариантом.

Что еще предстоит сделать:

  • unicode-версия шаблона
  • Добавление редко используемых, но более правильных html-тегов
  • Доработка форм с помощью списков
  • Полный переход на верстку слоями (div)
комментарии: 23 понравилось! вверх^ к полной версии
Блоки в шаблоне Default 18-09-2008 00:00


Добрался до .tpl файлов стандартного шаблона Danneo. Решил начать с top.tpl, bot.tpl и содержимого папки block.
Главная трудность - возникли затруднения при переходе от таблицы основы шаблона к блочной верстке. Изначально используется 3колоночный макет, левые и правые блоки имеют ширину 190пикселей, средний блок с контентом резиновый. Первым делом попробовал сделать так - левый и правый блок сделал в виде слоев с фиксированной шириной и обтеканием (слева и справа соответственно), а средний блок пустил после них, в результате чего он должен был занимать середину, и в тоже время растягиваться на всю возможную ширину. Это работает, однако браузер-инвалид ИЕ опять испортил картину. Он тупо спускал средний блок вниз. Я долго ковыряться не стал, решил оставить этот этап и перейти к таблицам меньшего масштаба.
К приммеру, такой код блока:
code:
<table width="100%">
<tr>
<td class="botblock">
{blockname}
</td>
</tr>
<tr>
<td class="paddingtext">
{blockcont}
</td>
</tr>
</table>

можно переверстать так:
code:
<div>
<div class="botblock">
{blockname}
</div>
<div class="paddingtext">
{blockcont}
</div>
</div>

Видно, что код становится короче и, что самое главное, более понятным и удобным для редактирования.
комментарии: 0 понравилось! вверх^ к полной версии
phpBB, Яндекс и rss 16-09-2008 09:51


Яндекс выпустил серию плагинов для лучшей индексации форумов. Разумеется, не забыли и про phpBB.

Плагин распределяет все на первое сообщение темы и остальные, являющиеся по сути комментариями. По умолчанию выдается 20 последних сообщений, но с помощью удобной навигации можно смотреть и другие сообщения.

На выходных нужно будет прикрутить, посмотреть. Яндекс молодцы, так держать.

Страничка проекта
комментарии: 0 понравилось! вверх^ к полной версии
Шаблон для danneo cms - рефакторинг таблиц стилей 14-09-2008 21:31


Сегодня занимался оптимизацией css файла дефолтного шаблона. Что было проделано:
1. Изменена структура файла.
В исходном файле все селекторы располагались на отдельной строке, причем свойства и их значения были прописаны на той же строке, что и селектор. В качестве разделителей были использованы пробелы, причем в порядочном количестве. Я же переписал, используя табуляцию для разметки, и размещая по одному свойству/селектору на строку.
2. Нижний регистр.
Возможно это покажется незначительным, но все же переписал код в нижнем регистре.
3. Упорядочивание свойств.
Внутри одного селектора все свойства теперь идут в алфавитном порядке. Кстати это позволило обнаружить некоторые некорректные места в коде.
4. Сокращение кодов цвета.
Css позволяет записывать код цвета #rrggbb в сокращенном варианте #rgb. Это было использовано мною, позволив еще немного уменьшить размер файла стилей.
5. Сокращенный вариант записи.
Кроме цветов, были сокращены и другие значения свойств. Например, padding: 2px 2px; можно записать как padding: 2px; а padding: 0px; можно записать как padding: 0; Опять же, это дало небольшое сокращение размера файла.

Некоторые неточности в исходном файле:
code:
.formtext { padding-left:10px; padding: 5px;

Здесь указывает отступ слева в 10пикселей, который затем переопределяется следующим свойством, которое задает отступ в 5пикселей со всех сторон.

code:
border-top: 1px solid #C6C6C6;
border-right: 1px solid #C6C6C6;
border-bottom: 3px solid #C6C6C6;
border-left: 1px solid #C6C6C6;

Здесь цвет и тип рамки одинаков для всех 4 сторон, однако задается 4 раза. Толщина в 1пиксель одинакова для трех сторон. Данную запись можно сократить до записи в две строки.

code:
background: #2D82B6 url(../images/topugol.gif) no-repeat top left;
background-color: #2D82B6;

Здесь второе свойство лишнее, так как не несет смысла, ибо дублирует часть первого свойства.

code:
border-left-width: 120px;
border-left-style: solid;
border-left-color: #f1f1f1;

Здесь можно все значения прописать, используя лишь один параметр border-left. Экономим 2 строчки кода.


Промежуточные результаты:
temp/default/css/style.css
исходный css файл: 24 893 б
css файл после оптимизации: 16 904 б
Оба файла идентичны, не считая исправления небольших неточностей, описанных выше.
temp/default/css/simple.style.css
исходный css файл: 5 253 б
css файл после оптимизации: 3 382 б
Оба файла идентичны, не считая исправления небольших неточностей, описанных выше.
комментарии: 0 понравилось! вверх^ к полной версии
Шаблон для danneo cms 14-09-2008 01:08


Получил "добро" на рефакторинг шаблона Default, который используется в danneo по умолчанию. Данная работа будет полезна для меня - я получу опыт, поучаствую в разработке интересного open-source проекта, получу заготовку для будущих шаблонов своих сайтов. Ну и для всех пользователей системы также будет полезным получить новый шаблон - за счет уменьшения размера он будет чуть быстрее работать, за счет перевода на блочную структуру сайты будут лучше индексироваться, за счет выноса оформления в css шаблон будет более простым для редактирования.
Список запланированных действий:
1. Уменьшить размер шаблона.
Для этого придется почистить код всех файлов, например в style.css порядка 4Кб лишних пробелов. Переход с таблиц на дивы также способствует уменьшению размера.
2. Переход с табличной структуры на блочную.
Постараюсь полностью избавиться от таблиц как инструмента структурирования шаблона. Оставлю лишь там, где они действительно необходимы.
3. Вынос начала и конца html-разметки в файлы top.tpl и bot.tpl соответственно.
Это даст возможность, к примеру, сменить доктайп внутри отдельно взятого шаблона. На данный момент это редактируется в php-файле для всех шаблонов одновременно.
4. Семантика и валидность.
Насколько возможно, перепишу код семантически, чтобы при редактировании верстальщикам было в нем проще разобраться. Ну и конечно же, шаблон должен быть валидным. На xhtml замахиваться не буду, так как это не поддержали пользователи, поэтому свертаю все под html 4.01 strict.
5. Кодировки.
Шаблон будет писаться изначально под cp1251-версию системы, однако по завершении работы будет создана и utf8 версия шаблона.
6. Мелочи.
Различные мелкие идеи. Например название шаблона с маленькой буквы, файл конфигурации в папке с шаблоном (в рассчете на будущие версии), использование редких тегов и прочее, прочее.
комментарии: 0 понравилось! вверх^ к полной версии
Текст вместо кнопок 06-09-2008 15:33


Для одного стиля потребовалось заменить все кнопки вида "Написать ЛС", "Профиль" и т.п. на соответствующие им надписи. Итак, как это правильно сделать. Покажу на примере страницы просмотра темы в стиле subSilver2.
Открываем styles/subSilver2/template/viewtopic_body.html.
Находим (примерно 279-280 строки):
code:
<td class="profile"><strong><a href="#wrapheader">{L_BACK_TO_TOP}</a></strong></td>
<td><div class="gensmall" style="float: {S_CONTENT_FLOW_BEGIN};">&nbsp;<!-- IF postrow.U_PROFILE --><a href="{postrow.U_PROFILE}">{PROFILE_IMG}</a> <!-- ENDIF --> <!-- IF postrow.U_PM --><a href="{postrow.U_PM}">{PM_IMG}</a> <!-- ENDIF --> <!-- IF postrow.U_EMAIL --><a href="{postrow.U_EMAIL}">{EMAIL_IMG}</a> <!-- ENDIF -->&nbsp;</div> <div class="gensmall" style="float: {S_CONTENT_FLOW_END};"><!-- IF not S_IS_BOT --><!-- IF postrow.U_EDIT --><a href="{postrow.U_EDIT}">{EDIT_IMG}</a> <!-- ENDIF --> <!-- IF postrow.U_QUOTE --><a href="{postrow.U_QUOTE}">{QUOTE_IMG}</a> <!-- ENDIF --> <!-- ENDIF -->&nbsp;</div></td>

Теперь заменяем попарно:
code:
{PROFILE_IMG}

code:
{L_PROFILE}


code:
{PM_IMG}

code:
{L_PM}


code:
{EMAIL_IMG}

code:
{L_EMAIL}


code:
{EDIT_IMG}

code:
{L_EDIT}


code:
{QUOTE_IMG}

code:
{L_QUOTE}


Далее по аналогии. Суффикс _IMG означает, что будет использоваться соответствующая картинка\кнопка, а префикс L_ означает, что будет использоваться соответствующая языковая переменная.
комментарии: 0 понравилось! вверх^ к полной версии