WordPress重写RSS源的规则

时间:2013-02-07 19:40:24

标签: wordpress .htaccess url rewrite

我刚刚将一个博客从Squarespace转移到自托管WordPress,我正在尝试设置重写规则,以便旧的RSS链接继续适用于现有订阅者。

我正在使用的网址如下:

方形空间:http://example.com/blog/atom.xml WordPress:http://example.com/feed/

我在我的functions.php中找到了以下代码

add_action( 'init', 'ss_feed' );
function ss_feed()
{
    global $wp_rewrite;
    $wp_rewrite->add_external_rule( 'blog/atom\.xml$', 'feed/' );
} 

这已成功导致我的.htaccess文件更新:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^blog/atom\.xml$ /feed/ [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

然而,点击http://example.com/blog/atom.xml仍会导致WordPress 404.任何人都可以解释这里可能出现的问题吗?请注意,我启用了WP超级缓存,并且.htaccess中也有一个大块,如果人们认为这可能是相关的,我可以在这里添加。

1 个答案:

答案 0 :(得分:0)

在Wordpress管理员中刷新永久链接作为第一个故障排除步骤。这经常解决这些问题。