Если плагин активен, покажите элемент. Если не скрыть элемент - PullRequest
0 голосов
/ 26 марта 2020

Я использую Wordpress с плагином Mailchimp.

Я создал этот код в своем нижнем колонтитуле. php file:

<div class="subscribe">
  <div class="subscribe-body">
    <h3>Subscribe</h3>
    <?php echo do_shortcode( '[mc4wp_form id="2501"]' ); ?>
  </div>
</div> 

Теперь я пытаюсь показать код, если плагин активен, если плагин неактивен, скрыть код.

Я нашел руководство по этому вопросу в Wordpress, но я очень новичок.

Ответы [ 3 ]

0 голосов
/ 26 марта 2020

Как?

/**
 * Detect plugin. For use on Front End only.
 */
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );

// check for plugin using plugin name
if ( is_plugin_active( 'plugin-directory/plugin-file.php' ) ) {
 <div class="subscribe">
  <div class="subscribe-body">
    <h3>Subscribe</h3>
    <?php echo do_shortcode( '[mc4wp_form id="2501"]' ); ?>
  </div>
 </div> 
}
0 голосов
/ 26 марта 2020

Правильный код

   /**
     * Detect plugin. For use on Front End only.
     */
    include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
    add_action( 'wp_footer', 'add_footer_code' );
    function add_footer_code(){
       // check for plugin using plugin name
       if ( is_plugin_active( 'plugin-directory/plugin-file.php' ) ) {?>

        <div class="subscribe">
           <div class="subscribe-body">
              <h3>Subscribe</h3>
              <?php echo do_shortcode( '[mc4wp_form id="2501"]' ); ?>
          </div>
        </div>
        <?php
       } 
    }

Если вы хотите добавить условие во внешний интерфейс, используйте код ниже

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

// check for plugin using plugin name
if ( is_plugin_active( 'plugin-directory/plugin-file.php' ) ) {
    //plugin is activated
}

Если вы хотите добавить условие только в бэкэнд, используйте код ниже

if ( is_plugin_active( 'plugin-directory/plugin-file.php' ) ) {
    //plugin is activated
}

Если вы хотите добавить условие в оба бэкэнда и интерфейс, используйте код ниже

// check for plugin using plugin name
if(in_array('plugin-directory/plugin-file.php', apply_filters('active_plugins', get_option('active_plugins')))){ 
    //plugin is activated
}
0 голосов
/ 26 марта 2020

Вы можете попробовать is_plugin_active () функцию Wordpress. В функции. php запишите это, изменив путь к файлу.

    <?php
    /**
     * Detect plugin. For use on Front End only.
     */
    include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
     add_action( 'wp_footer', 'add_footer_code' );
     function add_footer_code(){
    // check for plugin using plugin name
    if ( is_plugin_active( 'plugin-directory/plugin-file.php' ) ) {
        //plugin is activated
?>

 <div class="subscribe">
  <div class="subscribe-body">
    <h3>Subscribe</h3>
    <?php echo do_shortcode( '[mc4wp_form id="2501"]' ); ?>
  </div>

<?php
    } 
   }
...