wordpress插件重定向而不是执行搜索

时间:2014-10-25 16:07:55

标签: php wordpress

我正在创建一个插件;该插件有项目列表,我想在列表中搜索项目。

这是我的代码:

<form method="get" action="<?php echo admin_url('admin.php?page=listing'); ?>" id="search" >
<input type="text" name="q" placeholder='Search'/>
</form>

当我提交表单时,URL会重定向到:

http://localhost/wordpress/wp-admin/admin.php?q=shock

没有搜索发生!我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您的page参数被删除。

您正在使用GET方法,q参数会覆盖查询字符串中的所有其他参数,即page=listing

两种可能的解决方案:

  1. 通过设置POST属性来使用method="post",在这种情况下,q将作为POST参数传递给网址为.../admin.php?page=listing的网页。

  2. 在表单中包含page参数(<input type="hidden" name="page" value="listing"/>),并将admin_url('admin.php?page=listing');替换为admin_url('admin.php');,在这种情况下,您最终会{{1}因为您的表单将同时包含.../admin.php?page=listing&q=shockq个参数。

  3. 选择实际取决于插件获取搜索字符串的方式:GET或POST参数。