【发布时间】:2014-05-13 06:21:54
【问题描述】:
我正在尝试创建所有链接到主页的“人造”页面,其中包含 GET 数据中的相关变量。例如:
http://example.com/img/IMGNAME/comment/5678/
提供如下数据: http://example.com/?image=IMGNAME&comms=5678
我的 htaccess 文件中有以下内容:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^img/([^/]+)/comment/([^/]+) /?image=$1&comms=$2 [L,NS]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
问题是我有一个帖子有一个 IMGNAME (这就是我在主页上给定 GET 变量的情况下找到帖子的方式)。
当我手动输入 http://example.com/?image=IMGNAME&comms=5678 时,一切正常。
当我输入http://example.com/img/IMGNAME/comment/5678/
我被重定向到http://example.com/category/IMGNAME/(url 地址发生变化并呈现 single.php 模板)
我假设 index.php(或“/”)然后由 wordpress 处理,在其中它试图找到与我正在处理它的变量的内容最接近的名称的帖子并重定向到帖子?
有谁知道如何让输入的 url 留在地址栏中并让主页处理 GET 变量?
我是否需要创建一个不同版本的基本 index.php 文件以使其不重定向/搜索类似命名的帖子?我仍然需要它来处理带有 wordpress 标签等的主题模板页面。
【问题讨论】:
标签: wordpress .htaccess mod-rewrite redirect