编辑的.htaccess的插件停用 [英] Edit .htaccess on plugin deactivate

查看:127
本文介绍了编辑的.htaccess的插件停用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  1. 我想在.htaccess插件激活过程中添加重写规则。我怎样才能在.htaccess编辑/卷回重写规则的插件停用?

     函数add_to_htaccess($规则){
        $内容=<<<排爆
        \ nAddOutputFilterByType DEFLATE text / plain的
        AddOutputFilterByType DEFLATE text / html的
        AddOutputFilterByType DEFLATE为text / xml
        AddOutputFilterByType DEFLATE文/ CSS
        AddOutputFilterByType DEFLATE应用程序/ XML
        AddOutputFilterByType DEFLATE是application / xhtml + xml的
        AddOutputFilterByType DEFLATE应用程序/的RSS + XML
        AddOutputFilterByType DEFLATE应用程序/ JavaScript的
        AddOutputFilterByType DEFLATE应用程序/ x-j​​avascript的
        AddOutputFilterByType DEFLATE应用/ X的httpd  -  PHP
        AddOutputFilterByType DEFLATE应用程序/ x-httpd的,fastphp
        AddOutputFilterByType DEFLATE图像/ SVG + XML
        SetOutputFilter DEFLATE \ñ\ñ
        EOD;
        返回$内容。 $规则;
    }
    的add_filter('mod_rewrite_rules','add_to_htaccess');
    
    功能myplugin_enable_flush_rules(){
        全球$ wp_rewrite;
        $ wp_rewrite-> flush_rules();
    }
    register_activati​​on_hook(__FILE__,myplugin_enable_flush_rules');
     

  2. 上面的函数将重写规则,在默认的Word preSS规则间位于#BEGIN字preSS #结束字preSS 。我能做些什么来单独添加它(的.htaccess的底部?)

解决方案

我设法在我自己做到这一点。下面是我添加的功能。

 函数myplugin_deactivate(){
    //这将删除重写规则
    remove_filter('mod_rewrite_rules','add_to_htaccess');

    全球$ wp_rewrite;

    //刷新重写规则
    $ wp_rewrite-> flush_rules();
}
register_deactivati​​on_hook(__FILE__,myplugin_deactivate');
 

  1. I am trying to add rewrite rules in .htaccess during plugin activation. How can I edit/roll-back rewrite rules in .htaccess on plugin deactivation?

    function add_to_htaccess( $rules ) {
        $content = <<<EOD
        \nAddOutputFilterByType DEFLATE text/plain
        AddOutputFilterByType DEFLATE text/html
        AddOutputFilterByType DEFLATE text/xml
        AddOutputFilterByType DEFLATE text/css
        AddOutputFilterByType DEFLATE application/xml
        AddOutputFilterByType DEFLATE application/xhtml+xml
        AddOutputFilterByType DEFLATE application/rss+xml
        AddOutputFilterByType DEFLATE application/javascript
        AddOutputFilterByType DEFLATE application/x-javascript
        AddOutputFilterByType DEFLATE application/x-httpd-php
        AddOutputFilterByType DEFLATE application/x-httpd-fastphp
        AddOutputFilterByType DEFLATE image/svg+xml
        SetOutputFilter DEFLATE\n\n
        EOD;
        return $content . $rules;
    }
    add_filter('mod_rewrite_rules', 'add_to_htaccess');
    
    function myplugin_enable_flush_rules() {
        global $wp_rewrite;
        $wp_rewrite->flush_rules();
    }
    register_activation_hook( __FILE__, 'myplugin_enable_flush_rules' );
    

  2. The above function adds rewrite rules with in default WordPress rules lies between # BEGIN WordPress and # END WordPress. What could I do to add it separately (at the bottom of .htaccess ?)

解决方案

I have managed to do this at my own. Below is the function I have added.

function myplugin_deactivate() {
    // This will remove the rewrite rules
    remove_filter('mod_rewrite_rules', 'add_to_htaccess');

    global $wp_rewrite;

    // Flush the rewrite rules
    $wp_rewrite->flush_rules();
}
register_deactivation_hook( __FILE__, 'myplugin_deactivate' );

这篇关于编辑的.htaccess的插件停用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆