Статьи

Ультимативная среда разработки WordPress

В последние годы разработка WordPress прошла очень долгий путь, когда дело доходит до инструментов. В прошлом разработка веб-сайта WordPress требовала некоторой установки локального хоста MAMP / WAMP и почти всегда — довольно болезненной головной боли. Может быть, вы даже один из тех разработчиков, которые разработали свой сайт в живом окружении — я был.

К счастью, времена изменились, и теперь есть инструменты, которые помогают избавиться от головной боли и повторяемости при создании сайтов WordPress на вашем компьютере.

Разработка WordPress

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

Находясь вне индустрии в течение 3 лет, я получил уникальный взгляд на то, как быстро все меняется в вычислительной технике и, в частности, в веб-разработке. Разработка WordPress не является исключением.

Видите ли, когда я вернулся к разработке WordPress в декабре прошлого года, я решил взглянуть на настройку идеальной среды разработки WordPress. Я был приятно удивлен, увидев, что инструментальные средства вокруг WordPress продвинулись настолько сильно, что это все равно, что обменять Ford на Ferrari.

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

Начинается с сервера

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

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

Я собираюсь предложить вам удалить MAMP / WAMP / XAMP и начать использовать виртуальную среду разработки.

Почему? Есть так много причин:

  1. Это изолированная среда. Используя виртуализированную среду, вы создаете сервер разработки, который изолирован от операционной системы вашего хоста. Вы можете установить на виртуальную машину любую понравившуюся вам операционную систему и запускать / останавливать / перезагружать ее, не затрагивая хост. Это легко снести, когда вы закончите с разработкой и больше не будете нуждаться в ней.
  2. Что-то напутал? Нет проблем! Просто восстановите окружающую среду. Я уверен, что мы все оказались в сложной ситуации, когда мы повозились с настройками нашего сервера и взорвали все. Это легко исправить, перестроив виртуальную среду или просто используя снимки. Так что теперь вы можете поиграть и изменить настройки без страха провала.
  3. Как можно ближе к жизни, как вы можете получить. Вы можете буквально копировать вашу живую среду на локальном хосте, если хотите. Совместное использование этих двух сред помогает в отладке, настройке и даже развертывании.
  4. Вы можете запустить несколько разных серверных сред на одном компьютере. Один клиент использует Apache, а другой — Nginx? Нет проблем, создайте эти две разные среды на виртуальных машинах, и все готово.
  5. Единая среда для групп разработчиков. Если все в команде разработчиков используют одну и ту же настройку, это ускоряет время разработки, и возникает меньше вопросов о том, почему что-то не работает на машине x человек.

Теперь, когда вы проданы в виртуальной среде. Что вы должны использовать?

Я использую VVV . Для меня было чрезвычайно просто начать работу, иметь хорошую систему поддержки и использовать ее во многих крупных агентствах по разработке WordPress, в том числе в той, на которой я работаю, XWP .

Некоторые из других вариантов виртуальной среды разработки WordPress включают в себя: HGV , Wocker , VIP Quickstart .

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

  • vagrant-hostsupdater — этот плагин позволяет вашей бродячей установке обновлять записи в файле hosts вашего компьютера для добавления сопоставлений доменов в IP-адрес. Это означает, что вам не нужно вручную добавлять записи в ваш файл hosts.
  • Переменная VVV — безусловно, самый полезный инструмент для VVV называется Variable VVV, и он дает вам возможность быстро и легко создавать новые установки VVV WordPress с помощью командной строки. Определенно проверьте это

Александр Коко ранее писал о VVV , и я также недавно записал видео о том, как установить VVV на свой компьютер .

Сила командной строки

Кому не нравится немного командной строки фу, верно? WP-CLI — это ответ на ваше внутреннее желание командной строки.

WordPress WP-CLI

WP-CLI позволяет управлять установкой WordPress из командной строки (кстати, она поставляется с VVV).

Давайте рассмотрим некоторые практические примеры того, как вы можете использовать WP-CLI в вашей локальной среде разработки.

  • Установите WordPress. SSH’d на ваш сервер и нужно быстро установить WordPress? Просто используйте WP-CLI для создания новой установки WordPress.
  • Обновите WordPress. Нет ничего более болезненного, чем обновлять тонны веб-сайтов WordPress, посещая каждый из них, входя в систему, нажимая и затем обновляя. Вы можете сделать это прямо из командной строки с помощью одной команды.
  • Установка плагинов. Если вы нашли отличный плагин, который хотите установить на нескольких сайтах, снова сделайте это с помощью одной команды, используя WP-CLI.
  • Сброс базы данных WordPress. Испортили что-нибудь и хотите начать все заново? Легко, одна команда (это немного повторяется, не так ли?)
  • Импортировать контент. Да, вы уже догадались, вы можете импортировать контент в вашу установку WordPress или несколько установок одной командой.
  • И многое другое

Это все очень удобно, что вы можете сделать из командной строки. Лучше всего, в следующем разделе мы поговорим об IDE, и вы можете запустить все эти команды непосредственно из этой IDE.

Если вы хотите узнать больше, ознакомьтесь с этой статьей о WP-CLI от Ahsan Parwez .

IDE, которая имеет значение

Из всех инструментов, о которых я говорю сегодня, я чувствую, что это будет самым спорным. Когда дело доходит до IDE и редакторов, это почти как если бы вы вторгались в личное пространство, и многим людям это не нравится.

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

Я всегда был тем, кто не любил IDE. Нелюбовь, вероятно, добрая, я ненавидел их. Я чувствовал, что они раздутые, медленные и загроможденные.

Я был большим поклонником Sublime Text (и, кстати, до сих пор, я использую его ежедневно).

Поэтому в декабре, когда я возвращался к разработке WordPress, я проверил, какие редакторы были доступны для написания кода WordPress. Я был очень удивлен, когда IDE по имени PhpStorm продолжал получать упоминания.

Неохотно, я посмотрел, и мальчик, я рад, что я сделал!

На мой взгляд, PhpStorm — лучшая среда разработки для PHP и WordPress. Он предлагает все необходимое для создания веб-сайтов, плагинов и тем WordPress в одном месте и обладает невероятной интеграцией с WordPress (вам действительно нужно это проверить).

Вот три причины, почему вы должны рассмотреть PhpStorm в этом году для разработки WordPress:

  1. Все, что вам нужно, в одном месте. FTP — проверка, поддержка базы данных — проверка, терминал — проверка, контроль версий — проверка, отладка — проверка, рефакторинг — проверка, отличная интеллектуальная целостность и автозаполнение — двойная проверка! И многое другое.
  2. Интеграция WordPress в PhpStorm не имеет себе равных. PhpStorm глубоко понимает WordPress. Как только он подключен к проекту WordPress, он знает, как все связано друг с другом. Автозаполнение функций WordPress и даже действий и фильтров.
  3. Многие ведущие разработчики и агентства WordPress сейчас разрабатывают свой код с помощью PhpStorm. Для меня это явный признак того, что это одна из лучших доступных сред разработки для WordPress.

Если вы хотите начать работу с PhpStorm, ознакомьтесь с серией из 7 видео PhpStorm, которые я записал, чтобы начать работу с IDE.

Убедитесь, что ваш код шелковисто чист

Последний инструмент, о котором я собираюсь написать сегодня, это офигительный! Я особенно педантичен, когда речь идет о написании кода. Мне нравится, чтобы он шелковисто чист и следовал стандартам кодирования WordPress.

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

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

На самом деле, основная команда WordPress особенно строга к стандартам кодирования и их соблюдению.

Итак, как мы можем убедиться, что наш код соответствует стандартам кодирования WordPress? Ответ прост, и это инструмент под названием PHP CodeSniffer с набором правил стандартов кодирования WordPress .

Стандарты кодирования WordPress

Эти две утилиты просканируют ваш код, найдут любые расхождения между вашим кодом и тем, как он будет написан проектом WordPress, и сообщат вам о том, что не так. Магия!

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

Конечно, я не смог бы завершить этот раздел, не упомянув, что PhpStorm запустил поддержку PHP CodeSniffer. Я выпустил видео о том, как связать PhpStorm, PHPCS и набор правил кодирования WordPress .

В заключение

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

Вышеуказанные инструменты, если вы решите их использовать, дадут вам отличную основу для начала работы с более упорядоченным и автоматизированным подходом к разработке WordPress.

Если у вас есть другие инструменты, которые вы используете, я хотел бы услышать о них в комментариях ниже!