你真的需要URL吗?只有当您希望搜索被索引时,才需要这样的URL。示例:Check this. (url中的“a”来自此页面和主页中的搜索表单)解析表单的理想方法是使用init
操作挂钩,而不是设置窗体操作。如果你仍然想要自定义URL,请告诉我,我会告诉你一个解决方案!
编辑:假设只更改客户端名称。
URL:
add_filter(\'init\', \'add_page_rewrite_rules\');
function add_page_rewrite_rules()
{
global $wp_rewrite, $wp;
//this will hold the text field data
$wp->add_query_var(\'client_name\');
//the actual rule
add_rewrite_rule(\'^Projects/demos/demo-url-rewrite/client/(.*)?$\',\'index.php?pagename=client-data&client_name=$matches[1]\',\'top\');
}
现在用slug作为创建WP页
client-data
. 这是规则工作所必需的。制作页面模板,将其分配给此页面。确保页面模板中有以下两行。
global $wp, $wp_query;
$name = get_query_var(\'client_name\');
The
$name
var将有您在URL中传递的客户端名称,使用它进行处理,就像使用表单数据一样。您可以使用jQuery处理表单提交并重定向到此自定义URL,也可以使用
init
检查表单提交并使用硬重定向到此URL的操作。使用PHP时,重定向URL应为
echo home_url(\'/Projects/demos/demo-url-rewrite/client/\'.$_POST[\'name\']);
让我知道进展如何!