На каком движке лучше всего делать сайт?




≈ 21 мин. на чтение




Это вопрос, который встаёт перед всеми владельцами сайтов. Двигатель (движок), или система управления содержимым (CMS) сайта – это программный комплекс (часто называемый «скриптами») для создания веб-страниц, внесения изменений на них и управления доступом. При выборе оптимальной CMS следует сформулировать цель, а также обязательно учесть, насколько высока квалификация того, кто будет сопровождать сайт и наполнять его содержимым. 


На какой CMS лучше делать сайт? Вероятный ответ: на такой, которая позволяет поддерживать баланс между усилиями по предоставлению всех требуемых функций, и ресурсами, которые всё это потребует. В ситуации, когда функциональность ограничивается контентом одного рода, специализированные CMS (например, для создания каталогов, форумов, сборников статей и так далее) удобнее и проще в использовании. Например, если решать, на каком движке лучше делать сайт-портфолио, то нет смысла выбирать CMS, «заточенную» под блог или форум. Равным образом, когда требуется одновременно вести электронный магазин и обеспечивать общение с покупателями, имеет смысл выбрать двигатель, позволяющий подключить и ту, и другую функциональность, пусть даже в некоторый ущерб эффективности. 


Современные движки примерно равны по возможностям: любой тип сайта можно реализовать на произвольной CMS, это лишь вопрос объёма усилий по установке или созданию нужных модулей, а также вопрос аппаратных ресурсов (процессорное время, оперативная память, дисковое пространство), необходимых для работы движка. Если основное назначение сайта (например, наличие в нём блога) реализовано по умолчанию в самой CMS без подключения в ней дополнительных модулей – то при прочих равных условиях, следует предпочесть именно такую CMS.


Когда требуется определиться, что делает сайт хорошим – как для его владельца, так и для посетителей – делайте упор на лёгкость создания контента и эффективность навигации. В случае, когда функциональность требует установки дополнительных плагинов, стоит убедиться, что модули не заброшены их создателями, а до сих пор функционируют и поддерживаются (в противном случае неизбежны проблемы с работоспособностью, либо же проблемы с безопасностью). Эффективность, удобство и безопасность следует поддерживать одновременно, пренебрегать хотя бы одним из этих критериев – означает рисковать работоспособностью всего сайта и ставит под вопрос саму возможность его корректной работы. 


Если посмотреть статистику использования различных CMS, то Wordpress, Joomla и Drupal находятся вверху рейтинга популярности. Ниже мы рассмотрим плюсы и минусы каждой из упомянутых CMS. Заметим, что популярные двигатели сами по себе способны только на простейшие действия по созданию содержимого; приходится устанавливать модули (иногда используются термины «расширение», «плагин») – скрипты, которые добавляют функциональности. Иногда за функционал (за модули) приходится платить. И очень даже немалые деньги! Управление правами доступа, интеграция с другими сетевыми ресурсами, обеспечение информационной безопасности – по всем этим пунктам большинство CMS без установки дополнительных модулей – мало функциональны.



Построение сайта на Wordpress


Административная панель Wordpres

Wordpress – самая популярная CMS


Вопрос «Через что лучше делать сайт?» чаще сводится к простоте изучения инструментария. Порог освоения Wordpress крайне низок; проще говоря, его значительно легче освоить человеку неподготовленному, прилагая минимум усилий для реализации тех или иных функций, включая такие разнородные действия, как настройка внешнего вида (дизайна) или подключение плагинов (добавление отсутствующей функциональности). 


Среди достоинств Wordpress: бесплатность самого движка, большой выбор бесплатных модулей и шаблонов дизайна; простота установки и обновления; лёгкая в понимании панель управления сайтом («админка»); наличие большого числа руководств по работе с этой CMS. Если вы новичок в области построения сайтов – начните освоение этой области с Wordpress. Не стоит долго выяснять, на каком движке лучше делать сайт-портфолио – Wordpress пригоден для этого «из коробки».

 

Что можно сказать о достоинствах и недостатках Wordpress?

Эта CMS поддерживается многими автоматизированными системами установки Web-приложений (такими, как Softaculous); при подобной установке от пользователя фактически требуется только предложить входное имя администратора и его электронную почту, всё остальное делается уже после установки (которая в большинстве случаев происходит менее чем за минуту). Так же легко производится установка обновлений; в ряде ситуаций можно настроить CMS устанавливать самой себе обновления автоматически. 


Установить шаблон (тему оформления) и наиболее распространённые модули можно быстро и бесплатно. Помимо репозитория (хранилища) темы и модулей самого Wordpress, существуют сотни специализированных сетевых ресурсов, предоставляющих темы и модули как бесплатно, так и за скромную плату. 


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


Наконец, в Сети в свободном доступе можно отыскать множество инструкций и руководств, посвящённых установке и настройке Wordpress, на множестве языков, в текстовом и видеоформатах. 


Среди недостатков Wordpress – низкое качество кода; Wordpress – популярная мишень для взлома и поиска уязвимостей; практика поощрять пользовательские правки в файлах тем и модулей создаёт дополнительные угрозы безопасности. А теперь подробнее о недостатках. 


Wordpress является классическим примером «спагетти-кода» (низкая структурность, смешение данных и кода, неоправданная избыточность (много повторяющихся фрагментов кода, «копипасты»). Как следствие, код содержит много уязвимостей, что делает сайт лёгкой добычей для злоумышленников, желающих взломать ваш сайт. Также код не отличается эффективностью, а это снижает скорость работы сайтов на Wordpress. Большинство решений типовых пользовательских вопросов (например, выдача публикаций в определённом порядке) предполагает добавление пользовательского кода в тему, что может привести к потере правок после автоматического обновления или же сделает автоматическое обновление вовсе невозможным. 


Важно еще отметит, что Wordpress – первоначально движок для ведения блогов, всю прочую функциональность к нему прикручивают установкой модулей, и на достаточно сложных сайтах могут одновременно работать десятки модулей, что существенно увеличивает требования к хостингу, на котором размещён сайт, а чем выше требования к хостингу, тем выше за него ежемесячная плата. Если вам важнее всего эффективность и безопасность вновь созданного сайта – стоит использовать другой движок.



Построение сайта на Joomla


Административная панель Joomla

Joomla – CMS для каталогов и форумов


Joomla, система управления контентом, известна с 2005 года. В отличие от Wordpress, не ориентирована преимущественно на ведение блогов и построена в достаточной мере структурно, чтобы максимально гибко использовать все восемь типов её расширений (компоненты, модули, плагины, языки, библиотеки, шаблоны, файлы и пакеты). По сравнению с Wordpress, Joomla обладает более высоким порогом вхождения, и панель управления сайтом не создавалась с целью сделать её доступной пониманию неподготовленного человека. Однако Joomla удобна для построения хранилищ однотипных документов – отсюда ясно, на каком движке лучше делать сайт-каталог


Сложная структура даёт и бОльшую гибкость: построить сайт произвольной направленности на Joomla становится, по сравнению с Wordpress, технически проще, и для внедрения специфической функциональности нет необходимости вставлять авторские фрагменты кода в уже существующие темы и модули. Сам движок и большинство популярных его расширений доступны бесплатно. Если вам необходимо разработать специализированный сайт, где каждая добавленная функциональность должна в наименьшей степени зависеть от других – используйте Joomla. В случае, когда вам нужно представить разнообразие ваших достижений, правильным ответом на вопрос «На каком движке лучше делать сайт-портфолио?» будет – на Joomla.


К недостаткам Joomla следует отнести её тяжеловесность, требовательность к ресурсам. При прочих равных условиях сайт на Joomla будет требовать больше процессорного времени и оперативной памяти, нежели схожий по функциональности сайт на Wordpress (следствие лучшей структурности – некоторая потеря в производительности, плюс избыточность кода). Однако тут ещё можно поспорить, т. к. порой нагромождение модулей на Wordpress действительно сильно тормозит работу и требует больших ресурсов – об этом мы уже писали выше. 


Популярно также мнение, что Joomla в меньшей степени годится для решения SEO-ориентированных задач – задач продвижения сайта в поисковиках: известная особенность движка при настройке мнемонический структуры URL, ориентированной на человека (ЧПУ, человеко-понятные урлы), это когда возникают синонимы контента – один и тот же документ доступен по двум или более адресам.


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


Новые версии Joomla выходят регулярно и поддерживаются разработчиками в течение ограниченного периода времени (обычно не более одного года). Поэтому на вопрос «На какой джумле-CMS лучше делать сайт?» правильным ответом будет – на последней стабильной версии! 


Перенос сайта сложной конструкции под новую версию движка может означать ощутимый расход времени, а также необходимость переработки, полной или частичной, уже созданных расширений. Если же не обновлять двигатель, сайт может стать целью для атак при обнаружении существования уязвимостей, по количеству которых Joomla столь же печально знаменита, как и Wordpress. Если планируете долгое время использовать сайт на этой CMS, убедитесь, что команда разработчиков всегда готова внести необходимые правки в ранее созданный ими код.



Построение сайта на Drupal


Drupal, логотип и код

Drupal – лучшая по эффективности CMS


Из трёх CMS, лидирующих среди двигателей сайтов, Drupal можно считать наиболее стойкой и продуманной. Сам двигатель, как и большинство доступных для него модулей, бесплатен. Поставленный «из коробки», если не считать отсутствия большинства необходимых в настоящее время функций (SEO-оптимизация, интеграция с социальными сетями и аналитическими сервисами и т. д.), Drupal в наибольшей мере годится для немедленного использования. Если вам нужно быстро развернуть простой сайт, не поступаясь безопасностью и эффективностью, используйте Drupal. 


К вопросам безопасности в Drupal подошли ответственно: отдельная группа получает сообщения о потенциальных уязвимостях, исследует и при необходимости распространяет бюллетень безопасности всем подписавшимся на него – после того, как разработчики затронутого модуля или ядра CMS внесут необходимые правки. В этом смысле можно быть уверенным, что если получено предупреждение об уязвимости – к нему следует отнестись серьёзно и применить рекомендованные действия по возможности быстро. На какой платформе делать сайт лучше? На Drupal, если во главу угла поставлена безопасность!


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


Drupal также лучше уже упомянутых CMS в смысле масштабируемости, способности сохранять приемлемую скорость работы при повышении нагрузки на сайт. При грамотно проведённых настройках эта CMS может выдерживать пиковые нагрузки на сайт лучше своих конкурентов. Если планируете использовать сайт под высокой нагрузкой, Drupal — логичный выбор того, через что лучше делать сайт.


К недостаткам Drupal, помимо высоких требований к квалификации администратора этой CMS, и особенно – опыту программистов, занимающихся написанием модулей, следует отнести ощутимую сложность переноса существующего сайта на новые, старшие версии. Сообщество разработчиков Drupal, помимо последней стабильной версии, официально поддерживает только одну предыдущую. При этом переход на новую старшую версию может быть затруднительным: не всегда в распоряжении будет ровно тот же комплект безукоризненно работающих модулей; изменения в API могут потребовать кардинальной переделки написанных дополнительных модулей. Как и в случае с Joomla, игнорировать переход с неподдерживаемой уже версии не стоит, возможные уязвимости могут обойтись вам намного дороже.


Добавим ещё, что и Joomla, и Drupa,l скорее, можно назвать не просто системами управления контентом (CMS), но конструкторами, каркасами управления контентом (Content Management Framework, CMF), годными для разработки специализированных Web-приложений с заранее заданной функциональностью.



Так на какой CMS лучше делать сайт?


Выбирайте движок на основании поставленной задачи, квалификации тех, кто будет дополнять CMS новым кодом или править существующий. Написать модуль для Wordpress способен программист относительно низкой квалификации. Сделать расширение для Joomla потребует от программиста чёткого понимания типа и назначения расширения, умения писать хорошо структурированный код. Создать модуль для Drupal потребует от разработчика ещё большего объёма знаний и обязательной дисциплины разработки, умения писать качественный код. Опыт использования каждой из популярных CMS помогает понять, через что лучше делать сайт. Традиционным недостатком Wordpress является большое число конфликтов между модулями, сложность обеспечения приемлемого уровня информационной безопасности, трудность сопровождения – двигатель не предъявляет и не поощряет высоких требований к качеству кода.


Сетевые ресурсы растут и развиваются: помимо наращивания функциональности и поддержания безопасности на должном уровне, встаёт проблема потребления ресурсов. Wordpress в случае высоконагруженных сайтов требует объёма ресурсов (таких, как оперативная память, количество и ресурсоёмкость обращений к базе данных) существенно большего, нежели Joomla или Drupal. Если можно оценить рост аудитории создаваемого сайта, следует учесть способность движка Drupal к масштабированию. Если скорость разработки приоритетнее, при прочих равных выбирайте Joomla.


При сомнениях в оптимальности выбора поручите решение этого вопроса экспертам. Взвесив все требования и оценив перспективы развития, специалист выберет двигатель, оптимальный для вашего конкретного проекта, удобный для последующей работы, регулярно обновляющийся и требующий минимального количества усилий на обслуживание. Сюда же входят подбор наилучшего хостинга, снижение затрат на обслуживание ресурса в целом (включая расходы на системное администрирование). Когда учтены все тонкости конкретного движка, вы располагаете всем, что делает сайт хорошим.


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



Хотите хороший сайт?



Я даю своё согласие на обработку персональных данных и соглашаюсь с условиями и политикой обработки персональных данных.







Автор: Outlanding


Иногда для освещения темы дизайнер нуждается в консультации программиста, программист - в копирайтере, копирайтер - в дизайнере и руководителе проектов и т.д., и т.п. В такие моменты статья - это результат работы всей команды. Данный пост - как раз такой случай : )








Читайте также