Функция is_plugin_active() в WordPress: как использовать и примеры

# IS_PLUGIN_ACTIVE() │ WP 2.5.0

Функция is_plugin_active() определяет, активирован ли плагин. Она работает только в панели управления WordPress и является условным тегом.

Функция находится в файле wp-admin/includes/plugin.php, что означает, что она применяется только в админ-панели.

## Рекомендуемое использование

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

Если вы хотите использовать эту функцию на наружной стороне (на сайте), вам нужно подключить файл:

```php
require_once ABSPATH . 'wp-admin/includes/plugin.php';

Время выполнения:

  • 1 раз — 0.000043 сек (очень быстро)
  • 50000 раз — 0.63 сек (тоже очень быстро)
  • PHP 7.0.14, WP 4.7

Возвращаемое значение

Функция возвращает true или false:

  • true, если плагин в списке активных плагинов.
  • false, если плагин не в списке.

Использование функции

is_plugin_active( $plugin );

Параметры

  • $plugin (string) — требуется. Путь к файлу плагина относительно каталога плагинов.

Примеры использования

Пример 1: Проверка, активирован ли плагин в админке

/**
 * Проверяем, находится ли плагин в списке активных плагинов.
 */
if ( is_plugin_active( 'plugin-directory/plugin-file.php' ) ) {
    echo 'Плагин активирован';
} else {
    echo 'Плагин не активирован';
}

Пример 2: Проверка, активирован ли плагин вне админки (на фронт-энде)

/**
 * Проверяем, находится ли плагин в списке активных плагинов на фронтальной странице.
 */
require_once ABSPATH . 'wp-admin/includes/plugin.php';
if ( is_plugin_active( 'plugin-directory/plugin-file.php' ) ) {
    echo 'Плагин активирован';
}

Изменения

  • С момента версии 2.5.0 — функция была введена в WordPress.

Код функции

Функция is_plugin_active выглядит следующим образом:

function is_plugin_active( $plugin ) {
    return in_array( $plugin, (array) get_option( 'active_plugins', array() ), true ) || is_plugin_active_for_network( $plugin );
}

Связанные функции

  • activate_plugins()
  • deactivate_plugins()
  • get_plugin_data()
  • get_plugins()
  • plugin_basename()
  • validate_plugin_requirements()
  • wp_get_active_and_valid_plugins()

Условные теги

Вот некоторые условные теги WordPress, которые могут быть полезны:

  • is_admin(): Проверяет, находитесь ли вы в админке.
  • is_single(): Проверяет, показывается ли отдельная запись.
  • is_page(): Проверяет, показывается ли страница.

Этот список можно продолжать в зависимости от ваших потребностей.

Теперь вы знаете, как использовать функцию is_plugin_active() в WordPress. Если у вас возникнут вопросы, не стесняйтесь обращаться к документации или в сообщество WordPress!

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *