Intereting Posts
Направить новую схему перезаписи URL на новую? Пагинация не работает с шаблоном пользовательской страницы Добавление миниатюры сообщений в программно вставленное сообщение Как настроить размер Featured Images или Post Thumbnails в WordPress? Тэг названия не изменится Как создать разные типы галереи и позволить редактору выбирать между ними? запрос в category.php повторяет сам Миниатюра сообщения не будет изменяться по размеру Как получить возможность персонализированного сообщения? Влияет на скорость плагинов членства WordPress – в настоящее время пытается s2member Переименование вкладки профиля Buddypress Как использовать одну тему для нескольких сайтов WordPress? Почему in_category возвращает только одно сообщение в определенной категории? Как я могу скрыть определенные подменю на вкладке «Настройки» на панели управления? показывать только термины из родительской категории

Принудительный плагин активируется только из многоузловой сетевой панели

Можно ли активировать плагин только из NETWORK DASHBOARD (если используется Multisite).

В несемитическом режиме, можно активировать нормально.

Solutions Collecting From Web of "Принудительный плагин активируется только из многоузловой сетевой панели"

Вы можете указать, что плагин является «Только в сети» в информации заголовка плагина.

/* Plugin Name: Name of Plugin Plugin URI: Link to plugin information Description: Plugin Description [...] Network: Optional. Specify "Network: true" to require that a plugin is activated across all sites in an installation. This will prevent a plugin from being activated on a single site when Multisite is enabled. */ 

См. get_plugin_data() .

Network: true в плагине без мультисайта позволит плагину работать (быстрый тест на моей локальной установке подтверждает это).

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

 add_filter( 'all_plugins', 'wpse257256_hide_my_plugin' ); function wpse257256_hide_my_plugin( $plugins ) { if ( is_multisite() && ! is_network_admin() ) { unset( $plugins['my-plugin-name/my-plugin-file.php'] ); } return $plugins; } 

Справка

  • Фильтр all_plugins
  • is_multisite()
  • is_network_admin()