【发布时间】:2014-08-23 09:41:35
【问题描述】:
我正在使用 Wordpress 开发一个网站(用于文章、静态页面等),但在我的主题文件夹中我创建了一个子系统(通过不需要 Wordpress 的 php-mysql 处理),它使用另一个数据库(即包含产品)。单品(product.php)的php页面是这样的:
<?php
...
if($_GET['url']){
$url = $_GET['url'];
$sql = "select * from `products` where url='$url'";
$row = // start the query ($sql);
$title=$row[0]['title'];
$body=$row[0]['body'];
}
else{echo '404 Page.';}
?>
<body>
<?php
echo "<h1>$title</h1>
<p>$body</p>";
?>
</body>
它被 Wordpress 重写为 URL 中的product/,事实上,打开(即)这个 URL 就可以了:
http://localhost:1234/my-site/product/?url=product-number-one
^
product.php
但我需要重写它
http://localhost:1234/my-site/product/product-number-one
.htaccess 在 Wordpress 上默认是这样的:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /my-site/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /my-site/index.php [L]
</IfModule>
# END WordPress
我添加了这条规则:
RewriteRule ^(.*) product?url=$1 [R]
但不起作用。我尝试了其他解决方案,但没有成功。
【问题讨论】:
标签: php wordpress .htaccess mod-rewrite seo