Статьи

Улучшения мультисайтов в WordPress 4.4

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

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

WP_Network был добавлен, чтобы сделать настройку Multisite более аккуратной и лучше определенной. Он заполняет глобальные переменные $current_site и $current_blog .

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

В WordPress 4.4 представлены четыре новые функции, связанные с сетевыми настройками:

  • add_network_option()
  • update_network_option()
  • get_network_option()
  • delete_network_option()

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

  • add_site_option()
  • update_site_option()
  • get_site_option()
  • delete_site_option()

Важно знать, что именование этих функций сбивает с толку, потому что функции *_site_option() — это те же функции, которые вы использовали бы, если бы ваша установка WordPress не выполняла Multisite. Поэтому, если вы работаете в сети, функции *_site_option() относятся ко всей сети, а не только к одному сайту, а функции *_network_option() относятся не к вашей текущей сети, а к сети, отличной от текущий.

В версии 4.4 также появилось несколько новых хуков, которые могут оказаться полезными, если вы изменяете настройки своей сети.

Это следующие:

  • before_signup_header : это новое действие запускается до загрузки страницы регистрации в wp-signup.php . Поэтому, если вы хотите внести изменения в страницу регистрации, перенаправить на другую страницу или выполнить проверки перед загрузкой страницы регистрации, то вы можете прикрепить свои функции к этому хуку.
  • ms_network_not_found : эта ловушка действия срабатывает непосредственно перед ms_not_installed если глобальная ms_not_installed $current_site не была заполнена. Ранее хук ms_site_not_found срабатывал, но это учитывает более конкретные ответы для многосайтовых сетей. Это означает, что если сеть не найдена, вы можете использовать этот хук, чтобы определить запасной вариант, например, перенаправление в альтернативную сеть, вместо простого отображения экрана ошибки.
  • invite_user срабатывает после того, как пользователь приглашен присоединиться к сети, но до того, как ему отправлено уведомление. Используйте это, если вам нужно изменить способ работы уведомления или сначала сделать что-то еще (например, уведомление или уведомление для другого пользователя).

Также были внесены некоторые небольшие, но полезные улучшения в пользовательский интерфейс администратора сети, в том числе:

  • Для сетевых администраторов (или других пользователей с возможностью manage_network ) manage_network сети подключаемые модули можно просматривать на экране подключаемых модулей для каждого сайта в сети. Я уже нашел это полезным в одной из сетей, которыми я управляю, поскольку это помогает мне идентифицировать любые потенциальные конфликты плагинов на отдельном сайте.
  • При добавлении нового сайта в сеть вы можете выбрать язык для нового сайта, который не должен совпадать с базовым сайтом или другими сайтами в сети. Это применимо как при добавлении сайта через администратора сети, так и через страницу wp-signup.php . Это будет полезно для сетей сайтов, управляемых людьми, говорящими на разных языках. В прошлом я использовал Multisite для управления многоязычными сетями, когда клиенту требовался отдельный сайт для каждой страны, в которой он работает, и в таких случаях это будет действительно полезной функцией.
  • При поиске пользователей в вашей сети теперь вы можете использовать звездочки, чтобы найти более слабое соответствие для ваших условий поиска. Это полезно, если у вас есть сеть с большим количеством пользователей, и вы хотите, например, найти всех пользователей с одинаковым суффиксом к их адресу электронной почты.
Выбор языка для нового сайта в сети
Теперь вы можете выбрать разные языки для каждого сайта в вашей сети

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

Помните, что если вы ищете другие утилиты, которые помогут вам создать свой растущий набор инструментов для WordPress, посмотрите, что у нас есть в Envato Market .

Приятно видеть, что Multisite получил некоторые улучшения в этом выпуске — долго, может, он продолжится!