О важности кода при разработке WordPress-темы
Сегодняшний разговор будет посвящен разработчикам тем для WordPress. Проверяете ли вы код в процессе создания темы? Дизайн и структура очень важны, но важность кода от этого не становится меньше. Даже если вы пока не собираетесь добавлять тему собственной разработки в репозиторий на WordPress точка org, разумно будет разрабатывать новые темы так, словно вы собираетесь это сделать. Надеюсь, дочитав эту публикацию, вы поймете очевидные выгоды от качественной разработки кода.
Существуют группы волонтеров, которые инспектируют каждую тему, добавляемую в репозиторий WordPress точка org, на предмет совместимости и соответствия своду ранее созданных ими стандартов и правил. Все эти правила и требования перечислять не стану, но отдельно обращу ваше внимание на несколько наиболее важных с точки зрения разработки кода:
Далее кратко опишу каждый из этих пунктов.
Проверка плагинов для темы
Существует плагин, которые позволяет протестировать вашу тему на соответствие правилам и требованиям. Если в вашей теме нет рекомендуемых или обязательных компонентов, или в ней неверно указаны функции, этот плагин сообщит разработчику о таких ошибках и предложит возможные варианты исправлений.
Кто только не создавал в ранней блогосфере свои подборки плагинов для CMS WordPress, сейчас это уже стало не популярно, да и качество подборок сильно упало. Теперь авторы сайтов просто выкладывают список заезженных плагинов ради статьи, исключения, конечно, бывают, вот пример подборки, где автор постарался, описал каждый плагин и видно, что он их использовал в своей работе. Это даже не блогер, а скорее разработчик с ником – kupereal. Сейчас вообще стало очень мало людей, кто хочет поделиться своими наработками, а не просто написать статью ради статьи.
Качество кода темы
Есть общий набор гайдлайнов, который определяет, как следует форматировать HTML, CSS и PHP в вашей теме. Вся разметка HTML и CSS должна соответствовать стандартам W3C Standards. А код PHP не должен при этом генерировать ошибки, примечания, предупреждения при включенном параметре WP_DEBUG (включить его можно, поместив переменную define( 'WP_DEBUG', true ); в файл wp-config.php).
Тестирование компонентов темы
Насколько хорошо ваша тема справляется с постами без явно указанных заголовков? Корректно ли изменяется размер картинок? Правильно ли происходит размещение «плавающих» элементов в постах? Все ли возможные тэги HTML, используемые авторами в постах, правильно стилизованы для отображения в редакторе? Все ли виджеты темы выполнены в едином стиле? Тестирование целостности компонентов темы — это набор пробных данных, который позволяет наглядно увидеть, справляется ли ваша тема со всеми перечисленными выше сценариями событий.
Конечно, как я уже ранее отмечал, это только три сферы проверок, которые проводятся согласно требованиям команды тестировщиков проекта. Тема проходит проверку и попадает в репозиторий WordPress точка org при условии, что пройдет все проверки по всем критериям, а не только по этим трем.
Почему это важно? Правила таких команд тестировщиков важны для всех, кто разрабатывает темы для WordPress, по трем основным причинам:
- Они определяют основные единые параметры для всех пользователей и разработчиков WordPress-тем.
- Они обеспечивают соблюдение протоколов безопасности для тем.
- Они повышают «планку» требований для качества разрабатываемых тем.
Давайте остановимся на этих причинах подробнее.
Состав и единые параметры темы
WordPress-темы, несмотря на свою эклектичность, обязательно разрабатываются и функционируют на единой основе.
Если ваша тема очень сильно отличается от ядра разработки WordPress, вы рискуете тем, что такое существенное отличие отпугнет пользователей: если те параметры и характеристики, которые они обязательно ожидали увидеть, вдруг отсутствуют, то это существенно отпугнет потенциальных пользователей вашей WordPress-темы. Вот разделы гайдлайнов, которые определяют единство в разработке всех тем для вордпресс-репозитория.
Прежде чем кастомизировать те или иные параметры вашей темы, проверьте, придерживаетесь ли вы основного ядра разработки тем вордпресс.
Безопасность темы
Темы — один из важных компонентов в сайтах на базе WordPress, поэтому стоит убедиться в том, что созданный вами код безопасен. Не стоит создавать тему, в которой будут «лазейки» для хакеров, что может нанести ущерб потенциальным пользователям вашей темы. Никому не хочется, чтобы его или ее сайт взломали. Если вы придерживаетесь рекомендаций команды тестировщиков проекта, то вы будете еще на шаг ближе к созданию на столько безопасных тем оформления, на сколько это возможно. Вот основные правила, которые в данном случае следует соблюдать.
Настройки темы и безопасность данных — возможность утечки всех данных через «дыру» в безопасности вашей темы и настройках API для темы является одной из наиболее важных характеристик безопасности.
«Старение» и актуальность темы — код, утративший свою актуальность, и функции, которые больше не работают, представляют собой потенциальную угрозу безопасности, т. к. могут содержать «дыры» для внедрения хакеров. Темы из репозитория вордпресс удаляют, если они не обновляются регулярно авторами / разработчиками, чтобы быть совместимыми с новыми версиями движка. Аналогично, повышают риск взлома и сторонние скрипты. Если в вашей теме используются сторонние скрипты, пожалуйста, удостоверьтесь обязательно, что они регулярно обновляются. Если автор оригинального скрипта не проводит регулярных обновлений и не выпускает свежие версии скрипта, то подумайте дважды, прежде чем использовать такой скрипт в дальнейшем. Безопасность — это не тот компонент, который можно «поставить и забыть».
Качество темы как цель
Заключительная причина, по которой стоит обращать внимание на код вашей темы, — это качество разработки как цель. Хорошо сформированная тема, с современным подходом к написанию кода станет более легкой в работе основой для дальнейшей работы как автора, так и сторонних разработчиков, в будущем ее будет легче обслуживать. Чем больше тем созданы на базе «грамотного» кода, тем лучше для всего сообщества WordPress в целом. В этой связи следует уделять особое внимание качеству кода:
Вдобавок, WordPress также адаптировал стандарты кодинга для PHP, HTML и CSS. Эти стандарты используются в процессе конвертирования сторонних тем для использования их в рамках WordPress.
Выводы и советы для тех, кто хочет начать
Надеюсь, я смог убедить вас в том, что важно корректно разрабатывать и править код темы в создании как бесплатных, так и платных тем для WordPress. Если вы хотите применить некоторые из упомянутых выше принципов в разработке своих тем, вот список действий, которые надо держать в голове при разработке новой темы:
- Убедитесь в том, что вы знаете о текущих требованиях к темам.
- Просмотрите код текущей темы по умолчанию, такой как тема Twenty Eleven. Она станет вашей отправной точкой в том, как создавать оптимальный код и довести до максимума функциональность темы для WordPress.
- Заведите себе привычку тестировать вашу тему при помощи теста единства информации и компонентов темы.
- Активируйте режим WP_DEBUG в wp-config.php для проверки скрытых ошибок, предупреждений и примечаний к коду.
- Установите плагины Theme Check, Log Deprecated Functions, и Debug Bar. Выполните тестирование темы с их помощью, делайте это регулярно, чтобы перехватывать и исправлять замеченные ошибки или потенциальные проблемы до того, как они явно «всплывут».
- Прежде чем добавить кастомизируемую функцию, проверьте, есть ли в ядре WordPress функция по умолчанию, которая позволяет реализовать эту задачу. Если вы чувствуете, что вам не хватает функциональности ядра WordPress, попробуйте дополнить существующую функциональность ядра вместо того, чтобы «с нуля» писать новую функцию для темы. Убедитесь в том, что ваши кастомизации не приведут к «поломке» кода и появлению «дыр», которые могут навредить пользователям при переключении между темами.
- Обдумайте возможность присоединиться к команде проекта WordPress, что заставит вас проверять не только свой, но и «чужой» код.