2012-04-26 88 views
1

我正在尝试设置一个htaccess规则,该规则将与我拥有的当前永久链接结构一起工作。使用wordpress永久链接忽略网址前缀

目前的永久链接结构,我已经是这个

/%category%/%postname%/ 

而我的htaccess是如下

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase /blog/ 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /blog/index.php [L] 
</IfModule> 

和典型的网址是

/博客/ post_category_name/POST_NAME/

这一切都很好,很好。我面临的问题是,用户可以更改他们的区域设置,然后将区域代码前缀为下面的区域代码。现在

/英国/博客/ post_category_name/POST_NAME/

的问题是,WP采用博客的类别和post_category_name视后的名称,然后抛出一个404 WP内。

本质上我想完全忽略区域代码,这可能吗?

我还要补充一点,英国(或任何其他地区)目录不存在,

感谢

回答

2

如果你想赶上uk/文件夹,您需要做的是在根目录。把它放在根.htaccess(你可以检查!-f和!-d,如果你想确认它不是dir /文件)..这将允许你从查询字符串中查找国家代码。

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^([a-zA-Z]{2})/blog/(.*) /blog/$2?ccode=$1 [L,QSA] 
</IfModule> 

可以忽略的国家代码也:

如果
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^([a-zA-Z]{2})/blog/(.*) /blog/$2 [L] 
</IfModule> 

不知道,这将改变在WP的东西(不知道他们是如何处理的URL)。你必须检查。