【问题标题】:code to activate plugin in wordpress在wordpress中激活插件的代码
【发布时间】:2016-07-09 19:28:08
【问题描述】:

该客户希望在每周二几个小时之间自动激活一个 wordpress 插件。这是因为该插件与另一个插件有冲突。我在网上没有找到任何关于此的内容,该怎么做...任何人都知道当单击按钮激活插件时 wordpress 背后会发生什么?我在我的 wordpress 文件夹中找不到该特定页面... 谢谢!

我尝试过但不起作用的东西:

require('/web/htdocs/www.fattorefamiglia.com/home/wp-content/plugins/quick-chat/quick-chat.php');

function toggle_plugin() {

    // Full path to WordPress from the root
    $wordpress_path = '/web/htdocs/www.fattorefamiglia.com/home/';

    // Absolute path to plugins dir
    $plugin_path = $wordpress_path.'wp-content/plugins/';

    // Absolute path to your specific plugin
    $my_plugin = $plugin_path.'quick-chat/quick-chat.php';
$start = strtotime('1:30');
$end = strtotime('22:30');
$timenow = date('U'); 

if((date('w') == 3) && ($timenow >= $start && $timenow <= $end)) { // day 2 = Tuesday
     activate_plugin($my_plugin);
    }
    else {
        deactivate_plugins($my_plugin);   
    }
} 

我把这段代码放在functions.php中

【问题讨论】:

    标签: wordpress plugins


    【解决方案1】:

    在wordpress中通过代码激活插件

      function run_activate_plugin( $plugin ) {
         $current = get_option( 'active_plugins' );
         $plugin = plugin_basename( trim( $plugin ) );
    
         if ( !in_array( $plugin, $current ) ) {
         $current[] = $plugin;
          sort( $current );
          do_action( 'activate_plugin', trim( $plugin ) );
          update_option( 'active_plugins', $current );
          do_action( 'activate_' . trim( $plugin ) );
          do_action( 'activated_plugin', trim( $plugin) );
         }
    
        return null;
      }
    run_activate_plugin( 'plugin-folder-name/plugin-main-file.php' );
    

    【讨论】:

    • 谢谢,但这个问题是 4 年前提出的。也许它会帮助未来的用户。
    • 谢谢#Claudiu Creanga,我也解决了这个问题
    • 我遇到了这个问题,但这不是解决方案
    猜你喜欢
    • 2014-11-05
    • 1970-01-01
    • 2017-11-11
    • 1970-01-01
    • 2019-05-21
    • 2014-05-02
    • 2012-07-16
    • 2022-01-21
    • 2014-05-22
    相关资源
    最近更新 更多