Сегодняшний разговор будет посвящен разработчикам тем для WordPress. Проверяете ли вы код в процессе создания темы? Дизайн и структура очень важны, но важность кода от этого не становится меньше. Команда проекта WordPress Theme Review за несколько лет собрала лучшие практики и рекомендации относительно разработки тем для WordPress с целью повышения стандартов качества для тех тем, которые попадают в репозиторий тем на WordPress.org.

Даже если вы пока не собираетесь добавлять тему собственной разработки в репозиторий на WordPress.org, разумно будет разрабатывать новые темы так, словно вы собираетесь это сделать. Надеюсь, дочитав эту публикацию, вы поймете очевидные выгоды от качественной разработки кода.

Работа команды Тhe WordPress Theme Review и ее правила

В том случае, если вы впервые услышали о проекте и команде, которые занимаются проверкой и утверждением тем для WordPress, кратко опишу вам, что это такое. Речь идет о группе волонтёров, которые инспектируют каждую тему, добавляемую в репозиторий WordPress.org, на предмет совместимости и соответствия своду ранее созданных ими стандартов и правил. Все эти правила и требования перечислять не стану (вы можете самостоятельно с ними ознакомиться на сайте проекта), но отдельно обращу ваше внимание на несколько наиболее важных с точки зрения разработки кода:

Далее кратко опишу каждый из этих пунктов.

Проверка плагинов для темы

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

Качество кода

Есть общий набор гайдлайнов, который определяет, как следует форматировать HTML, CSS и PHP в вашей теме. Вся разметка HTML и CSS должна соответствовать стандартам W3C Standards. А код PHP не должен при этом генерировать ошибки, примечания, предупреждения при включенном параметре WP_DEBUG (включить его можно, поместив переменную('WP_DEBUG', true) в файл wp-config.php).

Тестирование компонентов темы

Насколько хорошо ваша тема справляется с постами без явно указанных заголовков? Корректно ли изменяется размер картинок? Правильно ли происходит размещение "плавающих"элементов в постах? Все ли возможные тэги HTML, используемые авторами в постах, правильно стилизованы для отображения в редакторе? Все ли виджеты темы выполнены в едином стиле? Тестирование целостности компонентов темы — это набор пробных данных, который позволяет наглядно увидеть, справляется ли ваша тема со всеми перечисленными выше сценариями событий.

Конечно, как я уже ранее отмечал, это только три сферы проверок, которые проводятся согласно требованиям команды тестировщиков проекта. Тема проходит проверку и попадает в репозиторий WordPress.org при условии, что пройдёт все проверки по всем критериям, а не только по этим трём.

Почему это важно?

Правила команды тестировщиков проекта важны для всех, кто разрабатывает темы для WordPress, по трём основным причинам:

  1. Они определяют основные единые параметры для всех пользователей и разработчиков WordPress-тем.
  2. Они обеспечивают соблюдение протоколов безопасности для тем.
  3. Они повышают "планку" требований для качества разрабатываемых тем.

Давайте остановимся на этих причинах подробнее.

Состав и единые параметры темы

WordPress-темы, несмотря на свою эклектичность, обязательно разрабатываются и функционируют на единой основе.

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

Прежде чем кастомизировать те или иные параметры вашей темы, проверьте, придерживаетесь ли вы основного ядра разработки тем WordPress. Ниже приведена таблица, в которой отображены основные требования к теме, которые надо соблюдать в процессе написания кода:

Компонент темы Используемый параметр WordPress
Настройка лого /банера Custom Headers
Настройка фона Custom Background
Управление компонентами меню WordPress Navigation Menus
Редактирование файла темы WordPress Theme Editor and Plugin Editor
Страница опций темы Settings API
Страница опций дизайна темы Придерживайтесь WordPress UI (хороший пост от Райана Имеля на данную тему)
Настройки внешнего вида Старайтесь сделать как можно меньше дополнительных настроек
Прямые запросы к БД WordPress Template TagsFunctions
Предварительные изображения в постах Post Thumbnails (Featured Images)

Безопасность

Темы — один из важных компонентов в сайтах на базе WordPress, поэтому стоит убедиться в том, что созданный вами код безопасен. Не стоит создавать тему, в которой будут "лазейки" для хакеров, что может нанести ущерб потенциальным пользователям вашей темы. Никому не хочется, чтобы его или ее сайт взломали. Если вы придерживаетесь рекомендаций команды тестировщиков проекта, то вы будете еще на шаг ближе к созданию на столько безопасных тем оформления, на сколько это возможно. Вот основные правила, которые в данном случае следует соблюдать:
  • Настройки темы и безопасность данных — возможность утечки всех данных через "дыру" в безопасности вашей темы и настройках API для темы является одной из наиболее важных характеристик безопасности.
  • "Старение" и актуальность темы — код, утративший свою актуальность, и функции, которые больше неработают, представляют собой потенциальную угрозу безопасности, т.к. могут содержать "дыры" для внедрения хакеров. Темы из репозитория WordPress.org удаляют, если они не обновляются регулярно авторами / разработчиками, чтобы быть совместимыми с новыми версиями движка WordPress. Аналогично, повышают риск взлома и сторонние скрипты. Если в вашей теме используются сторонние скрипты, пожалуйста, удостоверьтесь обязательно, что они регулярно обновляются. Если автор оригинального скрипта не проводит регулярных обновлений и не выпускает свежие версии скрипта, то подумайте дважды, прежде чем использовать такой скрипт в дальнейшем. Безопасность — это не тот компонент, который можно "поставить и забыть".

Качество

Заключительная причина, по которой стоит обращать внимание на код вашей темы, — это качество разработки как цель. Хорошо сформированная тема, с современным подходом к написанию кода станет более легкой в работе основой для дальнейшей работы как автора, так и сторонних разработчиков, в будущем ее будет легче обслуживать. Чем больше тем созданы на базе "грамотного" кода, тем лучше для всего сообщества WordPress в целом. В этой связи следует уделять особое внимание качеству кода:

Вдобавок, WordPress также адаптировал стандарты кодинга для PHP, HTML и CSS. Эти стандарты используются в процессе конвертирования сторонних тем для использования их в рамках WordPress.com:

Выводы и советы для тех, кто хочет начать

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

  • Убедитесь в том, что вы знаете о текущих требованиях к темам.
  • Просмотрите код текущей темы по умолчанию, такой как тема Twenty Eleven. Она станет вашей отправной точкой в том, как создавать оптимальный код и довести до максимума функциональность темы для WordPress.
  • Заведите себе привычку тестировать вашу тему при помощи теста единства информации и компонентов темы.
  • Активируйте режим WP_DEBUG в wp-config.php для проверки скрытых ошибок, предупреждений и примечаний к коду.
  • Установите плагины Theme CheckLog Deprecated Functions, и Debug Bar. Выполните тестирование темы с их помощью, делайте это регулярно, чтобы перехватывать и исправлять замеченные ошибки или потенциальные проблемы до того, как они явно "всплывут".
  • Прежде чем добавить кастомизируемую функцию, проверьте, есть ли в ядре WordPress функция по умолчанию, которая позволяет реализовать эту задачу. Если вы чувствуете, что вам не хватает функциональности ядра WordPress, попробуйте дополнить существующую функциональность ядра вместо того, чтобы "с нуля" писать новую функцию для темы. Убедитесь в том, что ваши кастомизации не приведут к "поломке" кода и появлению "дыр", которые могут навредить пользователям при переключении между темами.
  • Обдумайте возможность присоединиться к команде проекта WordPress, что заставит вас проверять не только свой, но и "чужой" код. Относительно такой возможности почитайте пост Джастина Тадлока "Join the WordPress theme review team".

Источник: ThemeShaper.com

Вам понравился материал?

Добавить комментарий

Такой e-mail уже зарегистрирован. Воспользуйтесь формой входа или введите другой.

Вы ввели некорректные логин или пароль

Извините, для комментирования необходимо войти.

1 комментарий

сначала новые
по рейтингу сначала новые по хронологии

Спасибо за инсрукцию. Вордпресс с каждым днем нравится мне все больше!