由网友(比天空还远的是你的心)分享简介:我想在.htaccess插件激活过程中添加重写规则。我怎样才能在.htaccess编辑/卷回重写规则的插件停用?函数add_to_htaccess($规则){$内容=<<<排爆\ nAddOutputFilterByType DEFLATE text / plain的AddOutputFilterBy...
我想在.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-javascript的
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_activation_hook(__FILE__,myplugin_enable_flush_rules');
上面的函数将重写规则,在默认的Word preSS规则间位于#BEGIN字preSS
和 #结束字preSS
。我能做些什么来单独添加它(的.htaccess的底部?)
我设法在我自己做到这一点。下面是我添加的功能。
函数myplugin_deactivate(){
//这将删除重写规则
remove_filter('mod_rewrite_rules','add_to_htaccess');
全球$ wp_rewrite;
//刷新重写规则
$ wp_rewrite-> flush_rules();
}
register_deactivation_hook(__FILE__,myplugin_deactivate');
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 DEFLATEnn
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' );
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' );
相关推荐
最新文章