Показаны сообщения с ярлыком Веб-дизайн. Показать все сообщения
Показаны сообщения с ярлыком Веб-дизайн. Показать все сообщения

воскресенье, 16 мая 2010 г.

понедельник, 12 мая 2008 г.

Open Source для нашей выгоды / Joomla!

Source: http://www.itblogs.ru/blogs/borkus/archive/2008/05/12/Open-Source-_34043B044F04_-_3D043004480435043904_-_32044B0433043E0434044B04_-_2F00_-Joomla_2100_.aspx

На праздниках принял и реализовал решение о переводе нашего сайта (www.konnasi.ru) на CMS Joomla!. Уверенности, что нужно связываться именно с этой системой управления контентом (CMS) в общем-то не было. На рынке довольно много всяких продуктов — от бесплатного ez Publisher до платного Bitrix. В свое время мы много их пересмотрели по заказу одного нашего клиента, и, в общем-то, никакого особого оптимизма этот анализ не вызывал.

Ясно было, что для наших довольно скромных задач нам нужен продукт со свойствами:

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

  2. В меру функциональный, адаптируемый и удобный, чтобы закрыть наши проблемы.

  3. Максимально дешевый, чтобы сильно не тратиться на проект, который для нас в общем-то идет по статье «невозвратные расходы».

  4. Он должен вписываться в план, предлагаемый хостинговой компанией.

В этом смысле ясно было, что решение надо строить на PHP, как на наиболее дешевой технологии. По размышлении, мы не стали ставить Bitrix, в основном потому, что он не имел перед Joomla! Никаких преимуществ с точки зрения наших скромных задач. Другие PHP решения были отвергнуты а общем-то субъективно, так как показалась, что за Joomla! стоит большАя масса пользователей и поддержки. Это видно хотя бы по количеству сделанных на ней сайтом и числу плагинов.

Так как наш сайт — экспериментальный, то мы решили строить его сразу на новой версии Joolma 1.5, которая пока существует только в виде беты версии.

Эта версия обладает рядом довольно полезных функций, например, мы активно использовали возможность переопределения способов «отображения» (views, «вида») контента, делаемого системными модулями (например, списка новостей). Речь идет не просто о переопределении стилей CSS, а переопределении генерируемого кода HTML. Раньше для этого нужно было кроить исходный код Joomla!, но начиная с версии 1.5 этого же можно добиться включив переопределенный вариант системного php-файла в свой шаблон сайта. Тогда обновлении CMS шаблон не рушится.

Естественно, мы создали два ландшафта сайта — локальный, на своей PC и в интеренте, поэтому нам была важно простота перемещения контента между ними (использовали phpMyAdmin и FileZilla).

Что существенного можно сказать про процесс переноса?

  1. Крайне полезной можно назвать позаимствованную на время у друзей-дизайнеров книгу Building Web Sites with Joomla! 1.5. Хотя она и написана по более ранним версиям всех использованных технологий (Joomla, MySQL, MyPHPAdmin), но основная структура того как и что надо было делать сохраняет значимость.

  2. Те усилия, которые мы предприняли годом ранее для перевода шаблона сайта на CSS в общем-то принесли плоды. Хотя Joomla! вносит много своих стилей, в целом CSS-дизайн легче изменяется и подстраивается под CSS.

  3. Пришлось бороться с большим количеством глюков софта. Например, MySQL так и не заработал, в качестве сервиса windows, а GUI управления им из состава пакета XAMPP рушится с системной ошибкой. Впрочем, запустили не как сервисис.

  4. Пришлось поломать голову, как это поставить на Zenon в рамках нашего тарифа. Инсталлятор Joomla! порывался создать новую базу на сервере Zenon, чего тариф не допускал. Кроме того, у Zenon, запутанная (на мой взгляд) документация их системы хостинга. По крайней мере я только опытным путем с phpMyAdmin определил  нужные реквизиты базы. Также в итоге пришлось заливать Joomla! вручную,  а не через инсталлятор. Другая фича касалась того, что базу надо переносить только в формате MySQL4. Но потом все заработало.

  5. Мне понравился FTP-менеджер FileZilla. Мало того, что он позволяет перетаскивать по FTP вложенные каталоги, но и еще ставит сам нужные права доступа.

Что касается самой Joomla!, то я так и не понял, нравится или нет мне ее система структурирования контента.

В исходной версии есть много ограничений, некоторые устраняются плагинами. Например, крайне не удобно строить ссылки из текста с одной статьи внутри системы на другую статью. Для этого лучше поставить плагин Linkr!.

Довольно запутанно вело себя главное меню — оно то раскрывалось, когда не надо. То не раскрывалось, когда это было надо. В итоге нашли хитрый механизм, связанный с созданием псевдонимов (alias) одних ссылок меню на другие. Он вроде проблему решил.

Через механизм псевдонимов удалось решить и другую проблему — если вы попадаете на статью не через главное, а через другое меню, то главное меню не раскрывается, чтобы отобразить путь к странице.

Пришлось немного подумать, как одновременно использовать два шаблона страниц — для главной страницы и для второй страницы. Тут помог опыт Bitrix.

Есть еще и вопросы с безопасностью, конечно, как и для всех PHP-систем.

Все это формирует базу для смутных предчувствий, что для проектов с большим количеством контента Joomla! будет не так хороша.

**

В перспективе, наверное, мы проведем с сайтом еще ряд экспериментов. Возможно активизируем поисковый модуль. Хотя HTML-контента у нас не много, смысла во встроенном поиске почти нет. Возможно, прикрутим туда wiki, как рекомендовал нам когда-то Максим Крентовский (он же booter). Еще поставим русификацию Joomla, чтобы при пролистывании новостей не проскакивал английский текст.

Выводы же из данного опыта примерно такие. Для переноса сайта на Joomla! квалификации все же нужны навыки разработчика и администратора. Их хотя и те и другие навыки требуются в ограниченных объемах, но все же уровня «продвинутого» пользователя для такой операции будет не достаточно. Готовые шаблоны для многих фирм будут не пригодны, поэтому придется лезть в код, а установка у провайдера так же связана с непредсказуемыми заморочками. Собственного, на освоение программирования шаблона, создание тестового ландшафта и перетаскивание сайта на провайдера у меня ушла пара дней — это не мало, но, конечно, и не много. Больше времени ушло на продумывание более четкой структуры контента, чему CMS способствует.

В целом я оказался доволен возможностями Joomla!. Довольно интересная альтернатива платным CMS-кам, по крайней мере, на небольших проектах.

// Влад Боркус

Published 12 мая 2008 г. 13:01 by Vlad Borkus
Filed under: , ,

Comments


вторник, 14 августа 2007 г.

Тяжелый редизайн

Source: http://www.itblogs.ru/blogs/borkus/archive/2007/08/14/_20043504340438043704300439043D04_-.aspx

Выходные и начало недели убил на редизайн нашего сайта (www.konnasi.ru). Не то, что бы это было крайне необходимо, но утомили регулярные жалобы пользователей на то, что сайт грузится медленно. Вообще говоря год назад нам сделали не самый плохой дизайн в не самой плохой студии, но этот дизайн был так сказать чересчур креативным. Что поделаешь -- делали друзья, которые дали скидку, но решили провести на нас эксперимент.

Страницы сайта состояли из немерянного размера таблиц степенью вложенности до 10. На страницах присутствовало до нескольких десятков картинок мелкого размера (оформление) плюс десятки прозрачных GIFов -- для выставления точных размеров клеток.

Так как страниц у нас не много, то мы пока обходимся без CMS. Но при табличном дизайне даже редкое обновление информации было просто кошмаром -- я терялся, когда искал место, куда эти данные надо вбивать, да и табличный дизайн легко разрушался при малейшей ошибке со стороны наполняющего.
В общем решили от него отказаться. Единственной альтернативой табличным заворотам на сегодня является CSS (каскадные таблицы стилей). Вот с ними-то и началась борьба. Да, они позволяют точно позиционировать любой элемент на странице, и в существенной степени разделить оформление страницы и ее содержание (что в общем-то делает и любая система управления веб-контентом, CMS). Но вот не все гладко и в этом королевстве.

Вообще-то проблемы, на которые я наехал -- классические и они перечислены на соответствующей странице Wiki, но то, что CSS «плывет» на уже мелких проектах меня неприятно удивило.

Итак, что плохо:
- Невозможно вычислять расстояния. Классический случай: пользователь поменял размер шрифта, надо передвинуть картинки. Сделать это крайне сложно.
- Невозможно задавать несколько картинок в качестве фона. Поэтому когда мне надо сделать рамку, то приходится делать несколько вложенных, каждый со своим фоном... в общем труба.
- Невозможно менять размер колонок в многоколоночном дизайне синхронным образом. Колонки независимы и каждая занимает столько место, сколько в ней есть информации...Это, например, не позволяет простым способом положить повторяющийся графический образ в качестве вертикальной границы колонки. Он повторит себя, но только до той точки, где еще есть данные!
- Крайне сложно позиционировать элемент внутри ячейки, если используется возможность «плавающих» (float) ячеек (а она используется ох как часто).
- Очень по-разному дизайн ведет себя в Internet Explorer и Firefox. Особенно, когда он посчитан в относительных единицах (em), а не пикселях.
- При сложном дизайне, который «масштабируется вместе с изменением окна браузера», возникает много вложенных тегов. Иначе говоря те же верстающие таблицы, но по иному названные.
- В общем-то очень не хватает выражений (сложения, умножения и т.п). они доступны, увы только в IE. Вроде обещают в CSS3, но пока будет поддержка в браузерах -- сто лет пройдет. Понятно, что есть еще DOM и JavaScript, но это сильные таблетки, к них хотелось бы прибегать в последнюю очередь.
И еще много чего хотелось бы, например определия границ окантовки -- скажем, чтобы линия грыницы не доходила пол символа до пересечения с другой границей... бог с этим.

Но в итоге редизайн первой страницы затянулся. И ввиду того, что я от некоторых красивостей отказываться не захотел, то его пришлось делать довольно «жестким». Например, при увеличении размера шрифта дизайн первой страницы плывет при простотре в Firefox. Простых путей обойти этот эффект я пока не придумал, хотя все думаб как прикрутить туда ячеистую структуру.
На второй странице ради CSS пришлом выкинуть много оформления, о котором, впрочем, я не жалею. Проще надо быть...

Есть во всем этом деле и позитивные моменты. Скорость загрузки страницы сократилась раз в 10, хотя остались проблемы со счетчиком «Кирилла и Мефодия» из-за доступа к которому все временами «встает». Ну а апдейт контента или там планируемое подключение CMS стало совсем простым делом.

PS. Вообще-то наткнулся на много статей по этой теме. Идет целая война сторонников табличного дизайна и сторонников CSS. Но, собcтвенно, все что в этих спорах высказывается иллюстрируется нашим сайтом. Ничего нового.

//Влад Боркус
Published 14 августа 2007 г. 23:50 by Vlad Borkus Edit
Filed under: , , [Edit Tags]

Comments