如何在不使用ftp的情况下使用新规则覆盖.htaccess或手动编辑它

时间:2011-02-21 作者:wow

我希望脚本将新规则添加到当前.htaccess 用户无需ftp或手动编辑。

例如,我使用timthumb调整主题上的图像大小,并希望重写URL和当前.htaccess 会是这样的。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^images/thumb/(.*) timthumb.php?filename=$1
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
问题

如何将新规则添加到.htacces 在我的主题选项上。

为Timthumb?启用Mod rewrite:[是][否]

如果单击[是]RewriteRule ^images/thumb/(.*) timthumb.php?filename=$1 将自动添加到当前.htaccess

让我知道

1 个回复
最合适的回答,由SO网友:Jan Fabry 整理而成

您可以在^index\\.php$ 线路通过WP_Rewrite 类,更具体地说add_external_rule() 方法它们被添加到non_rewrite_rules 大堆which is written in the mod_rewrite_rules() method.

这是一个非常简单的例子。您仍然应该刷新重写规则(一次),可以在插件激活时刷新,也可以通过访问Permalinks页面刷新。

add_action( \'init\', \'wpse9966_init\' );
function wpse9966_init()
{
    global $wp_rewrite;
    // The pattern is prefixed with \'^\'
    // The substitution is prefixed with the "home root", at least a \'/\'
    $wp_rewrite->add_external_rule( \'images/thumb/(.*)$\', \'timthumb.php?filename=$1\' );
}

结束

相关推荐

HTAccess或重定向到链接的遮盖部分?

我安装了一个ad rotate插件,可以在我的网站上显示一些广告,但该插件是经过编码的,因此它使用了ad count链接中的完整目录。我想知道是否有什么东西可以很容易地放在我的htacces中隐藏链接。例如:http://mysite.com/wp-content/plugins/ad-rotating-plugin/rotate.php?trackerid=1需要看起来像:http://mysite.com/rotate.php?trackerid=1 (实际上,这方面的任何变化都很好,我只是不希望链