Правильный выбор CMS для сайта очень важен для успеха проекта. Но эта статья будет посвящена не обзору движков в целом, а обзору именно WordPress.
Почему такое внимание именно к этой CMS?
Потому что, она максимально широко представлена в информационном пространстве и потому что информация представленная о ней по большей степени либо не правдива либо неверно интерпретируется. Множество людей, которые практически ничего не знают о web-технологиях и о том, что такое движок сайта, уверены, что сайт им нужен именно на WordPress. Они часто задают нам вопрос, почему мы не работаем с WordPress. В этой статье мы постараемся ответить на этот вопрос, классифицировать WordPress и развеять некоторые мифы, связанные с этой платформой.
Классификация WordPress
Есть множество различных факторов, по которым мы можем классифицировать системы. Мы не будем их детально все рассматривать тут. Обратим внимание только на те, которые позволят нам лучше понять WordPress.
Типы систем
SaaS-конструкторы сайтов.
Это проекты, которые предоставляют услугу аренды вычислительных мощностей и CMS с определенными функциями. Они позволяют создавать сайты, используя готовые компоненты, что уменьшает время и стоимость разработки, а также не требует особых навыков программирования. Вы не можете изменять программный код этих систем, поскольку он закрыт.
Примерами таких систем являются Wix, Shop Express и Хорошоп.
“Коробочная” CMS с открытым исходным кодом.
Эти системы считаются профессиональными и предоставляют возможность загрузки и установки на собственный сервер. Они включают в себя набор предустановленных функций, но также позволяют пользователю вносить изменения в соответствии с его потребностями.
Примерами таких систем являются Joomla, OpenCart и WordPress.
Несмотря на то, что WordPress номинально относится к категории профессиональных "коробочных" CMS, на практике его использование можно отнести к гибридной категории, которая сочетает черты как первой, так и второй категорий.
Конструкторы на базе CMS.
Этот тип систем предполагает установку на коробочную CMS стороннего функционала конструктора страниц. Целью создания таких систем было желание дать возможность делать сайты без знаний кода и без абонплат за SaaS-конструкторы, т.е. создание сайта, практически, без затрат. Этой цели достичь не удалось, поскольку эти конструкторы оказались сложными и для работы с ними понадобились “операторы”, которые понимают интерфейс и знают как с ним работать.
Этот тип систем имеет определенные особенности, приводящие к низкому качеству создаваемых сайтов. Это связано как с самими конструкторами, так и с необходимостью установки множества плагинов. Кроме того, такие системы чаще всего используются новичками и разработчиками с низким уровнем квалификации, что оказывает влияние на качество и профессионализм результата.
Подобные конструкторы доступны практически для всех популярных коробочных CMS. Однако проблема особенно актуальна в случае с WordPress, так как из-за ограниченного базового функционала системы альтернативный более профессиональный подход к разработке становится непрактичным на этой платформе.
Назначение CMS
У каждой CMS есть свое предназначение. Оно обусловлено базовым функционалом системы. Есть CMS для создания интернет-магазинов, для создания форумов, корпоративных сайтов, блогов и т.д.
Конечно, любую систему с открытым исходным кодом можно дорабатывать. Сторонний функционал на Коробочных CMS - это абсолютно нормальная практика. Этот функционал может быть как установленный из готовых плагинов, так и написанный индивидуально под проект. Но сколько такого функционала допустимо на проекте?
На этот вопрос нельзя ответить однозначно. Хотя, интуитивно мы понимаем, что 10% стороннего функционала - это нормально, а 90% - нет.
При выборе движка, базовый функционал системы должен быть одним из ключевых параметров. Нужно выбирать систему, которая даст возможность реализовать максимальное количество функционала “из коробки”. На наш взгляд, как минимум 60% функционала, необходимого проекту, должно быть “родного”. Если система не устраивает вас на 50%, то это повод писать систему индивидуально под проект.
Это говорит о том, что если вам нужен интернет-магазин, то не стоит его делать на базе движка для форума или блога, лучше выбрать специализированную систему.
Что касается WordPress, то это блоговый движок и из коробки он позволяет создавать блог или простой сайт-визитку. Из-за такой ограниченности базового функционала, реализация 90% функций сторонними плагинами - распространенная практика для WordPress. Нередки случаи, когда WordPress используется только для входа в админку, а все остальное управляется сторонним функционалом. Можно ли в этом случае говорить что сайт работает на WordPress? Это похоже на то, что мы скажем, что ездим на Rolls Royce, если в багажнике нашего Lanos лежит запаска от Rolls Royce.
Многие статьи, рекламирующие WordPress, пишут, что с блогового функционала все только начиналось, а сейчас вы можете реализовать маркетплейс или доску объявлений на этом движке. Но это не совсем так. Базовый функционал не развивается, он так и остался блоговым. Тем не менее, с помощью стороннего функционала вы можете сделать маркетплейс или доску объявлений, только это будут очень плохие системы, только номинально соответствующие необходимым возможностям, но абсолютно нежизнеспособные.
Многоязычность
Многоязычность - одна из немногих функций, которая должна быть предусмотрена на уровне ядра системы, то есть быть встроенной.
Многоязычность может быть реализована и плагинами, но это неизбежно приведет ряду проблем.
Если многоязычность реализуется плагинами, то появляются проблемы совместимости, поскольку весь ваш функционал, выводящий контент, должен быть совместим именно с этим плагином, чтобы выводить контент на разных языках. Также, реализация многоязычности сторонними средствами приводит к усложнению программного кода, что может замедлить работу сайта и повлиять возможности масштабирования проекта.
Приведем два примера с многоязычностью, реализованной плагинами из жизни:
- Совместимость
Когда на сайте много плагинов, возникает проблема совместимости их между собой. И в частности плагин многоязычности может быть не совместим с некоторыми функциями сайта. Однажды мы встретили сайт с каталогом товаров на WordPress. Разумеется, функционал каталога был сторонним, также был добавлен плагин хлебных крошек и плагин многоязычности. Все плагины были совместимы с текущей версией WordPress. Но была не полная совместимость между собой, в результате чего, хлебные крошки на страницах каталога не переводились и отображались на одном языке на всех языковых версиях. - Поддержка
Иногда, разработчики плагинов отказываются от дальнейшей поддержки своих продуктов и перестают выпускать обновления. Так на одном проекте, маркетолог обновил WordPress и оказалось, что под новую версию плагина многоязычности уже нет. О резервных копиях никто не позаботился и возникла необходимость выбора альтернативного плагина многоязычности и заново заводить переводы.
Учитывая актуальность многоязычных сайтов на рынке Украины, рассматривать разработку сайта на движке без поддержки многоязычности, считаю ошибкой.
Какие проблемы будут ждать сайт на WordPress?
Проблемы со скоростью
Медленный сайт - это характерно для WordPress, на котором установлено большое количество стороннего функционала. Замедления происходят как на стороне сервера из-за некачественного программного кода и нюансов работы плагинов с базой данных, так и на стороне браузера, поскольку большое количество плагинов подключает к страницам сайта большое количество файлов, которые загружаются при открытии страницы.
Проблемы с безопасностью
Популярные системы всегда взламывают чаще. Но помимо этого, большую долю уязвимости несут в себе сторонние плагины, в которых может быть множество дыр в безопасности, оставленных как случайно таки и умышленно
Проблемы с профессиональной доработкой
Если сайт создан на базе плагинов и конструкторов, то можно сказать, что он выведен из профессиональной среды. Поскольку доработки будут не рентабельны, а большинство проблем будет связано именно с тем, как сайт построен и решением должна быть переработка сайта. Именно по этой причине, мы не беремся за доработки сайтов на WordPress.
Проблемы с совместимостью плагинов
Мы уже вскользь упомянули эту проблему, но она гораздо шире, чем приведенный пример с многоязычностью. Если на сайте более 20 плагинов, то вероятность того, что что-то работает не верно - огромна, но без тщательного тестирования, вы можете не замечать проблем. Более того, эти проблемы могут быть только на уровне кода и приводить к снижению позиций в поисковых системах.
Можно ли сделать на WordPress качественный сайт?
Конечно можно. Да, у WordPress крайне ограниченный функционал. Но все остальное, о чем мы упомянули связано больше с тем как это движок используют в большинстве случаев, но сам WordPress - не приговор.
Хороший программист, который знает нюансы системы, ее слабые места и умеет их перекрывать, сможет создать качественный сайт.
Это потребует больших затрат, чем с изначально более подходящей системой, но это возможно.
К сожалению, мы крайне редко встречаем хорошо сделанные сайты на WordPress.
Для себя и проектов, с которыми мы работаем, мы не видим в WordPress преимуществ, ради которых стоит выбрать эту систему и ввязаться в решение сопутствующих проблем.
Почему WordPress популярен?
- WordPress появился в начале популяризации сайто строения, когда выбор был куда более ограничен, чем сейчас.
- WordPress прост. Чем меньше функционала, тем проще интерфейс и тем проще разобраться с тем, что делать. Потому, этот движок становится первым у большинства новичков. А также с ним работают на постоянной основе низкоквалифицированные разработчики. В итоге, большинство специалистов работают с WordPress.
- Стоимость. Сама система WordPress бесплатна, а создание сайта с использованием готовых шаблонов и плагинов является быстрым и недорогим. Кроме того, многие специалисты, работающие с WordPress, предлагают свои услуги по доступным ценам.
- Маркетинг. WordPress ведет успешные кампании по популяризации
Эта совокупность факторов вывела WordPress в лидеры популярности. Вот только стоит правильно читать рейтинги популярности.
В рейти нгах представлены не только профессиональные CMS, но и конструкторы. Не удивительно, что конструкторы более распространены как и WordPress с использованием конструкторов и шаблонов. Это не корректно сравнивать с другими CMS, на которых в основном, идет профессиональная разработка.
Ну и наконец, знаете ли вы сферу, в которой самое распространенное было бы лучшим? Скорее это все же следствие доступности. Потому, приводить популярность WordPress как причину выбрать его, считаем не правильным.
P.S.
Мы нередко встречаем тезис о том, что WordPress любят поисковые системы. Но также встречали и утверждения, что WordPress не любят поисковые системы.
Насколько могут быть корректны такие утверждения?
Любой движок сайта - это программный комплекс, задача которого сформировать html-документ страницы сайта и отправлять его в браузер. Сайты, как мы их видим, это интерпретируемый браузером html-документ.
Поисковые системы видят только html-документ. Они не видят программных файлов на сервере, того, что является сутью любой CMS.
Делая страницу сайта на разных CMS, можно сделать абсолютно идентичный html-документ. Другими словами, на уровне html нет проявлений самого движка и нельзя сказать, что поисковый робот может любить или не любить какой-то движок. Поисковики смотрят на ряд технических характеристик сайта. Но на любом движке можно сделать как хороший так и плохой сайт. Сам по себе движок не дает сайту гарантий. И утверждение, что поисковая система по особенному относится к сайтам на определенной системе, может звучать только в контексте обвинения в коррупции.