【发布时间】:2013-12-19 07:11:08
【问题描述】:
我有在 WordPress 中创建的网站。在网站上,我有很多 CMS 页面。我有一个显示属性列表的页面。在此页面上,我有一个链接地址列,通过单击该链接用户重定向到该属性的详细信息页面。
我正在通过从短代码调用的函数显示属性列表。在 PHP 代码文件中,我使用类似这样的锚标记来创建链接:
<a href="<?php echo bloginfo('url').'/auction-detail/?id='.$auctions[$i]->id; ?>"><strong style="text-decoration:underline">Detail</strong></a>
这会显示如下 URL:mysite.com/auction-detail/?id=1234
这对我来说很好,但现在我不想显示这样的链接。我想创建 SEF URL,因为我想在 URL 中显示属性的地址,例如:
mysite.com/auction-detail/country-state-city
我已经通过使用表单而不是锚标记成功地创建了这些类型的 URL:
<form action="<?php echo bloginfo('url').'/auction-detail/'.$address; ?>" method="post">
<input type="hidden" name="id" value="<?php echo $auctions[$i]->id; ?>" />
<input type="submit" value="Detail" name="Submit" id="frm1_submit" />
</form>
但现在的问题是 WordPress 将我重定向到“未找到,错误 404”页面。
我认为这是默认的 WordPress 功能,因为不仅对于此页面,而且对于所有页面,如果我在页面名称或帖子名称之后输入任何字母,那么它会执行相同的操作并将我扔到 404 页面。
示例:mysite.com/contact-us/
对于上面的 URL,如果我输入任何 alpahbet,例如:mysite.com/contact-us/abcd,那么它会将我扔到 404 页面,但如果我在页面名称后输入数字,那么它会停留在同一页面上,例如: mysite.com/contact-us/1234
我进行了很多搜索并实现了很多东西,但没有任何效果。
任何人都可以为此提供解决方案,以便如果我在页面名称之后传递地址,例如:
mysite.com/auction-detail/country-state-city
那么它应该坚持或停留在这个页面上,不应该去 404 页面。
地址可以包含字母数字值、空格和特殊字符。
提前致谢。
我已选择永久链接设置作为帖子名称 - mysite.com/sample-post/
【问题讨论】:
标签: php wordpress .htaccess redirect permalinks