Wordpress .htaccess重写数据库模板

时间:2014-05-13 06:47:36

标签: php wordpress .htaccess

我正在尝试将网站转换为WordPress。正在使用的网址目前采用以下格式: http://www.domain.com/database/44/category/short-item-description.html

为了显示存储在数据库中的项目,我创建了一个页面模板DatabaseFetch.php并向WordPress添加了一个页面,以便在地址http://www.domain.com/database/使用此模板(这也可以通过{{3 }})

模板DatabaseFetch.php将使用PHP代码从URL获取ID号,然后使用此ID号从数据库中获取相关的项目详细信息。

我正在尝试更改WordPress根文件夹中找到的.htaccess文件,因为我希望http://www.domain.com/?p=39格式的所有网址都由http://www.domain.com/database/44/category/short-item-description.html处理,但我希望浏览器显示该网址格式为http://www.domain.com/database/(即不更改的URL)

在过去的几天里我尝试了很多组合,但我无法让它发挥作用。使用行

RewriteRule ^/?database/([0-9]+)/?([a-zA-Z0-9_-]*)/?([a-zA-Z0-9_-]*).html$  /database/ [NC,L]

调出WordPress 404页面

使用

RewriteRule ^/?database/([0-9]+)/?([a-zA-Z0-9_-]*)/?([a-zA-Z0-9_-]*).html$  /?p=39 [NC,L]

显示正确的页面,但浏览器中的网址更改为http://www.domain.com/database/44/category/short-item-description.html

有谁知道我需要如何更改下面的.htaccess文件才能获得我想要的结果?

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# RewriteRule ^/?database/([0-9]+)/?([a-zA-Z0-9_-]*)/?([a-zA-Z0-9_-]*).html$  /database/ [NC,L]
RewriteRule ^/?database/([0-9]+)/?([a-zA-Z0-9_-]*)/?([a-zA-Z0-9_-]*).html$  /?p=39 [NC,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

更新 也许如果我以另一种方式提问。在非Wordpress安装中,我在.htaccess

中有一行定义了所需的结果
RewriteRule ^/?database/([0-9]+)/?([a-zA-Z0-9_-]*)/?([a-zA-Z0-9_-]*).html$  database.php?id=$1 [NC,L]

我怎么能在WordPress中做同样的事情?

0 个答案:

没有答案