Как узнать активный плагин в WordPress или нет

Ромчик
1

wordpress

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

Для того, что бы проверить активен плагин или нет в WordPress существует функция is_plugin_active('$plugin'), где $plugin — путь к файлу плагина.

Но если мы используем эту функцию не в админке, то мы должны ее подключить. Функция is_plugin_active описывается в wp-admin/includes/plugin.php. Поэтому, когда мы данную функцию используем в шаблоне мы должны в ручную подключить файл, где она описана. Это делается следующим образом:

<?php include_once( ABSPATH . 'wp-admin/includes/plugin.php' ); ?>

Давайте рассмотрим пример. Возьмем стандартный плагин «Hello Dolly», котрый установлен по умолчанию. И мы хотим, чтобы если данный плагин активен, то в футере темы Twenty Twelve выводилась надпись «Плагин «Hello Dolly» активен». Иначе выводиться надпись «Плагин «Hello Dolly» не активен»

Первое, что мы сделаем — это посмотрим где находиться основной файл нашего плагина.

Путь к плагину

Как видим файл плагина Hello Dolly находиться в папке с плагинами и называется hello.php. Отлично. Теперь отредактируем файл footer.php темы Twenty Twelve. Вот так он выглядит:

<?php 
/** 
* The template for displaying the footer. 
* 
* Contains footer content and the closing of the
* #main and #page div elements. 
* 
* @package WordPress
* @subpackage Twenty_Twelve
* @since Twenty Twelve 1.0 
*/ 
?>
</div><!-- #main .wrapper --> 
<footer id="colophon" role="contentinfo">
<div class="site-info"> 
<?php do_action( 'twentytwelve_credits' ); ?>
<a href="<?php echo esc_url( __( 'http://wordpress.org/', 'twentytwelve' ) ); ?>" title="<?php esc_attr_e( 'Semantic Personal Publishing Platform', 'twentytwelve' ); ?>"><?php printf( __( 'Proudly powered by %s', 'twentytwelve' ), 'WordPress' ); ?></a>
</div><!-- .site-info --> 
</footer><!-- #colophon -->

</div><!-- #page --> 

<?php wp_footer(); ?>
</body>
</html>

Отредактируем его следующим образом:

<?php 
/** 
* The template for displaying the footer.
* 
* Contains footer content and the closing of the 
* #main and #page div elements. 
* 
* @package WordPress 
* @subpackage Twenty_Twelve 
* @since Twenty Twelve 1.0 
*/ 
?> 
</div><!-- #main .wrapper --> 
<footer id="colophon" role="contentinfo">
<div class="site-info"> 
<?php do_action( 'twentytwelve_credits' ); ?> 
<a href="<?php echo esc_url( __( 'http://wordpress.org/', 'twentytwelve' ) ); ?>" title="<?php esc_attr_e( 'Semantic Personal Publishing Platform', 'twentytwelve' ); ?>"><?php printf( __( 'Proudly powered by %s', 'twentytwelve' ), 'WordPress' ); ?></a>
</div><!-- .site-info -->
<!-- проверка -->
<?php include_once( ABSPATH . 'wp-admin/includes/plugin.php' ); ?>
<?php if (is_plugin_active('hello.php')):?> 
    <div> Плагин "Hello Dolly" активен</div>
<?php else:?> 
    <div>Плагин "Hello Dolly" не активен</div>
<?php endif ?>
<!-- конец проверки -->
</footer><!-- #colophon --> 
</div><!-- #page --> 
<?php wp_footer(); ?> 
</body> </span></code>
</html>

Наш вставленный код находиться между комментариями <!-- проверка --> и <!-- конец проверки --> .

Проверяем, переходим в админку и активируем плагин Hello Dolly

Активация плагина

Переходим на сайт и смотрим:

03

Появилась надпись в футере «Плагин "Hello Dolly" активен»

Теперь отключим плагин

04

И посмотрим на сайте:

05

Надпись изменилась на «Плагин "Hello Dolly" не активен»

Ок, все работает так, как мы и хотели.

Понравилась статья? Поделись с друзьями.
  • Add to favorites
  • Добавить ВКонтакте заметку об этой странице
  • Twitter
  • Facebook
  • Мой Мир
  • LiveJournal
  • Одноклассники
  • Блог Я.ру
  • MySpace
  • FriendFeed
  • В закладки Google
  • Google Buzz
  • Яндекс.Закладки
  • Reddit
  • StumbleUpon
  • Technorati
  • del.icio.us
  • БобрДобр
  • LinkedIn
  • Memori.ru
  • Сто закладок
  • Blogger

  • Функция проверки выключен ли плагин WordPress | Все о WEB программировании - 11.07.2013 в 09:35

    […] времени суток. В статье «Как узнать активный плагин в WordPress или нет» мы проверили активный плагин или нет. Но существует и […]

  • ©2012-2017 По всем вопросам обращайтесь через форму обратной связи

    Яндекс.Метрика