MOD_REWRITE /foo.html到/ existing / page /?page = foo

时间:2011-05-24 08:48:34

标签: wordpress .htaccess mod-rewrite seo

这可能吗?

更长的版本..

我们有一个Word Press网站,但我们要做的是捕获某些URL(例如:/foo/bar-ace-spades.html)并将它们发送到wordpress中的另一个页面(例如:/ info / deck-of -cards /),然后将显示相应页面的wordpress事件。

我现在拥有以下内容:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^foo/(.*)\.html info/deck-of-cards/?page=$1 [NC,L] 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !.*.(?:gif|jpg|png|pdf|mp3|avi|mpeg|bmp|mov)
RewriteRule . /index.php [L]

现在,当我更改以下内容时:

RewriteRule ^foo/(.*)\.html info/deck-of-cards/?page=$1 [NC,L]

RewriteRule ^foo/(.*)\.html test.php?$1 [NC,L]

它会起作用。

除非有Word插件的插件,否则说它需要完全按照我的描述进行操作。我看了一些SEO插件。我知道有Joomla的SEF插件!找不到Word Press。

非常感谢任何帮助或信息。

干杯

PS。我应该更清楚,我的客户端不想做301或302重定向。需要重写。棘手的问题。

还添加.. 重写时,我不想显示任何拖尾垃圾。只需在后台进行,所以/foo/test-page.html> / info / deck-of-cards /将显示,并且隐藏请求。然后我可以进入PHP并获得获取。

这是一场噩梦。

2 个答案:

答案 0 :(得分:0)

此插件应满足您的需求

https://wordpress.org/extend/plugins/redirection/

答案 1 :(得分:0)

在这种情况下,您可能希望将参数传递给index.php以指定所需的页面/帖子。

RewriteRule ^foo/(.*)\.html index.php?p=xxx&page=$1 [NC,L] 

之后,您应该已禁用Wordpress中的自动网址更正功能,请按照此处的说明进行操作

http://www.mydigitallife.info/how-to-disable-wordpress-canonical-url-or-permalink-auto-redirect/

希望这有帮助:)

补充说:我发现这两个步骤对于这种情况是不够的,标题来了但不是内容。