Использование WP_List_Table и search_box (): как разбивать найденные результаты поиска при отправке методом «Почта»?

Я использую настраиваемый WP_List_Table-Class, чтобы отобразить пользовательскую таблицу с отелями в панели инструментов. Я могу пропустить страницы с разбивкой на страницы справа вверху, как и ожидалось.

Форма поиска также добавляется с помощью

$my_list_table_instance->search_box( 'Search', 'search_id' ); 

и он работает нормально, но только для первой страницы.

Внутри формы у меня есть два скрытых поля для разбивки на страницы:

 // List and form output $page = filter_input( INPUT_GET, 'page', FILTER_SANITIZE_STRIPPED ); $paged = filter_input( INPUT_GET, 'paged', FILTER_SANITIZE_NUMBER_INT ); echo '<form method="post" id="list-hotels-form">'; printf( '<input type="hidden" name="page" value="%s" />', $page ); printf( '<input type="hidden" name="paged" value="%d" />', $paged ); $hotel_table->prepare_items(); $hotel_table->search_box( __( 'Search Hotels', 'uruk' ), 'search_id' ); $hotel_table->display(); echo '</form>'; // ... 

Проблема

При отправке формы поиска методом post я не получаю (неэстетично) длинную строку запроса. Поисковые запросы снова вставляются в форму поиска, но они не добавляются к страницам с разбивкой по страницам. Поэтому, переходя на следующую страницу результатов, я теряю условия поиска.

Мои вопросы)

  • Как добавить аргумент запроса в ссылки для разбивки на страницы, когда присутствует поисковый запрос? Метод set_pagination_args() не позволяет добавлять пользовательские аргументы в ссылки на страницы.
  • Лучше отправить форму с помощью get ( как рекомендовано здесь ) с самого начала и перестроить форму action-value с земли? В противном случае значение действия становится слишком длинным, так как реферер добавляется каждый раз.

Solutions Collecting From Web of "Использование WP_List_Table и search_box (): как разбивать найденные результаты поиска при отправке методом «Почта»?"