1

我希望用户点击 www.domain.com/how-it-works 的链接

我的 URL 重写是:

RewriteRule ^how-it-works/?$ index.php?action=about&link=howItWorks [NC]

index.php 获取“动作”和“链接”参数,然后这就是我迷路的地方......

我目前正在使用以下内容:

require( TEMPLATE_PATH . "/about.php" );

这会加载 about.php 模板文件,这正是我想要的,但是我将“同一页面链接”放在哪里:#HIW?#HIW 是 about.php 模板文件中的一个链接。

4

3 回答 3

1

您的#HIWurl 中的 称为HTML 中的片段标识符

假设您使用的是 apache,您可以使用(注意末尾的NEand标志):R

RewriteRule ^how-it-works/?$ index.php?action=about#HIV [NC,NE,R]

(我拿走了,&link=howItWorks因为我想#HIV替换它,如果没有,你可以把它放回去)

http://httpd.apache.org/docs/2.2/rewrite/flags.html#flag_ne

于 2013-05-09T01:45:20.807 回答
0

据我了解,您的 URL Rewrite 已经包含该链接信息。在这种情况下,HIW您上面提到的最终加载 url 是index.php?action=about&link=howItWorks.

你为什么不在$_GET['link']about.php 中写出结果的输出呢?

我的意思是,如果您想从about.php文件中给出答案,您可以获取链接信息$_GET[]并从那里提供您想要的结果信息。

于 2013-05-08T19:39:50.947 回答
0

扩展您的重写以允许内部链接:

RewriteRule ^how-it-works/?(#.*)?$ index.php?action=about&link=howItWorks [NC]

请不要,我不知道这个 reg ex 是否有效,我只是快速输入它。如果它不能正常工作,请尝试一些。

它应该“正常工作”:)

于 2013-05-08T20:05:49.183 回答