От автора: Возможность расширяемости в WordPress сделала эту CMS самой широко используемой системой в мире. Концепция тем и плагинов сделала данный фреймворк крайне популярным, а работа с ним в свою очередь привела к появлению десятка тысяч новых тем и плагинов. Как использовать плагин WordPress без потери производительности?
Но, как говорил дядя Бен, с огромной силой приходит большая ответственность. В одной CMS WordPress нельзя использовать более одной темы (в большинстве случаев), но можно использовать неограниченное количество плагинов. Большое число установленных плагинов может снизить производительность – но не всегда. В данном уроке я объясню вам, как использовать плагины в WordPress без потери производительности.
Почему WordPress это удивительная система
Давайте более подробно рассмотрим возможность расширяемости в WordPress. WordPress появился в 2003 году, как ответвление от другого ПО для блоггинга под названием «b2 Cafelog». Год спустя 22 мая 2004 года в версии 1.2 была представлена возможность добавления плагинов. Примерно еще через год 17 февраля 2005 года вышла версия 1.5 с возможностью добавления тем.
Я считаю, эти две версии были самыми значимыми нововведениями в истории WordPress. До их выхода сообщество WordPress целиком состояло только лишь из пользователей, но с выходом этих версий к сообществу присоединились разработчики (некоторые пользователи стали разработчиками). Если вы хотите создать программное обеспечение, которое будут использовать люди (в том числе и разработчики) по всеми миру, то вам необходимо большое сообщество разработчиков.
У WordPress одно из самых больших сообществ разработчиков в экосистеме проектов с открытым исходным кодом. Сложно определить, сколько именно, так что я не могу точно сказать цифру. Но эта цифра находится где-то в районе десятков тысяч. И все эти разработчики создали больше чем десять тысяч плагинов и тем (вместе взятых).
Из-за огромного количества плагинов и тем все больше и больше людей используют WordPress и разрабатывают для него плагины и темы, что приводит к росту сообщества… И этот заколдованный круг стал причиной того, что каждый четвертый сайт в интернете находится под управлением WordPress.
Плагины снижают производительность?
Ответ – и да и нет. Как и с большинством коротких ответов тут не все понятно. Посчитав количество плагинов, можно определить затрачиваемые ресурсы. Дело в том, что некоторые плагины используют больше системных ресурсов, а некоторые вообще не используют. Я могу установить тысячи плагинов, которые никак не замедлят мой сайт, а могу установить всего один, который полностью нагрузит систему. Все зависит от нескольких факторов:
Назначение: Назначение плагина говорит о том, насколько он тяжелый с точки зрения производительности. Плагин контактной формы использует куда меньше системных ресурсов, чем плагин-помощник с SEO, к примеру.
Код: Неудивительно, что плагин с плохо написанным кодом работает намного хуже, чем хорошо написанный плагин. Вот почему умно использовать фреймворк WordPress Plugin Boilerplate.
Среда: Неиспользуемые системные ресурсы это не всегда хорошо. Я имею в виду, что это хорошо с точно зрения роста трафика, но вы не будете ехать со скоростью 10 км/ч на Tesla Model S. Если плагину требуется чуть больше системных ресурсов, а ваш проект запущен на мощном сервера, вам не придется от него отказываться. На общем сервере пришлось бы отказаться от использования данного плагина.
Как грамотно выбрать и использовать плагин
Теперь когда мы поняли, почему плагины могут (или не могут) тормозить веб-сайт, пора разобраться, как предотвратить замедление сайта. Я написал несколько советов, однако это не законченный список, вы можете добавить его своими пунктами, написав их в комментариях.
Используйте плагин Plugin Performance Profiler
Плагин Plugin Performance Profiler или P3 это точно ваш союзник. С его помощью можно посмотреть, как сильно другие плагины тормозят ваш сайт, измеряя каждый плагин по отдельности.
Если вам необходимо получить краткую сводку об используемых плагинами ресурсами, то данный плагин очень прост в обращении. После установки перейдите во вкладку P3 Plugin Profiler на странице Tools и нажмите Start Scan. Если было выбрано автоматическое сканирование, то P3 выполнит быстрое сканирование путем случайного открытия нескольких страниц сайта и просмотра того, как плагины влияют на скорость загрузки страниц.
Отличный способ посмотреть, какие плагины забирают большую часть системных ресурсов, а какие не оказывают столь существенного влияния на систему.
Грамотно выбирайте плагины
Как я говорил выше, плохо написанный плагины работают хуже, чем хорошо написанные. А в нашей огромной экосистеме WordPress плагинов в большинстве случаев существует более одного варианта выбора плагина с необходимым набором функций. Если вы понимаете, как должен выглядеть правильный код, то необходимо просмотреть код плагина, который собрались использовать. (также это можно узнать из отчета P3). Помните, популярный плагин еще не всегда самый лучший.
Переходите на лучший сервер
Почему люди так злятся, когда Google Chrome потребляет так много оперативной памяти? В смысле, больший объем ОЗУ не значит, что ваш компьютер будет работать быстрее. Если у вас стоит 8Гб ОЗУ, а Google Chrome потребляет 1Гб, это значит, что браузеру нужен ровно 1Гб для нормальной работы.
То же самое относится и к серверу. Если у вас больше системных ресурсов, то их можно потратить на большее количество вещей. Если у вас нет необходимости в мощном сервере, то и не нужно его использовать. Если же вам нужен более мощный сервер для запуска большего количества плагинов, то нет смысла пытаться достичь нужной скорости от сайта на общем сервере.
Если у вас есть системные ресурсы или у вас есть «ресурсы» для покупки системных ресурсов, не стесняйтесь, используйте плагины, которые вам нужны в работе.
Заключение
Не нужно говорить «Мне нельзя использовать больше, чем Х плагинов» или «SEO плагин замедлит мой сайт, так что мне не следует его использовать, хотя он мне нужен». Вы можете задействовать столько плагинов, сколько вам нужно (или вы хотите) при условии, что плагины и сервер подобраны с умом.
А что вы думаете об этом? Делитесь мнениями в комментариях. И если вам понравился этот урок, не забывайте делиться им со своими друзьями!
Автор: Barış Ünver
Источник: //code.tutsplus.com/
Редакция: Команда webformyself.