2014-10-25 4 views
0

Я создаю плагин; у плагина есть списки элементов, и я хочу искать элементы в списках.плагин для 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 

И поиск не происходит! Как это исправить?

+0

Почему вы перенаправляетесь на страницу администратора вашего сайта WP? Это не имеет никакого смысла. –

ответ

1

Ваш page параметр стирается.

Вы используете метод GET, а параметр q переопределяет все остальные параметры в строке запроса, которая равна page=listing.

Два возможных решения:

  1. использование POST путем установки атрибута method="post", в этом случае q будет передан в качестве параметра POST на страницу с URL .../admin.php?page=listing.

  2. включить параметр page внутри вашей формы (<input type="hidden" name="page" value="listing"/>) и заменить admin_url('admin.php?page=listing'); с admin_url('admin.php');, в этом случае вы будете в конечном итоге на .../admin.php?page=listing&q=shock, потому что ваша форма будет содержать как q и page параметры.

Выбор действительно зависит от того, как ваш плагин получает строку поиска: GET или POST.

+0

очень умный ans .. и так сложный .. шляпы выключены .. :) –

Смежные вопросы