Intereting Posts
Пользовательские URL-адреса в результатах пользовательского поиска удалить шаблон страницы из раскрывающегося списка? что такое имя_параметра в базе данных, которое хранит информацию о текущем виджет-инициаторе в боковой панели frontend? Как сделать запрос, возвращающий страницы от нескольких родителей Современный календарь Tribe Календарь wp-запрос с мета-запросом не работает вообще WordPress REST API всегда пропускает параметры – rest_missing_callback_param Крючок для редактирования wordpress объединяет два запроса вместе в основном запросе Как разрешить загрузку обновлений темы только для WordPress? Удалите плагин Duplicator из меню администратора, если не администратор Удалить поле из json в wp rest api v1 Является ли WP Importer безопасным для нескольких пользователей? Обновление через несколько версий Где находится папка wp-content / themes? WordPress добавляет текст, отфильтрованный текст, внутри тега последнего абзаца контента (а не после него)

Поисковые посты и страницы AJAX

Я пытаюсь создать плагин, где мне нужно создать поиск AJAX. Im, используя метод, описанный в http://www.garyc40.com/2010/03/5-tips-for-using-ajax-in-wordpress/, для выполнения вызовов ajax. Пока все хорошо.

Проблема не в том, как получить результаты поиска в моей функции ajax.

Первая попытка заключалась в использовании WP_Query следующим образом:

$query= new WP_Query( array( 'post_type'=> 'any','post_status' => 'publish','posts_per_page' => '8','s' => wp_specialchars($string)) ); 

Проблема здесь в том, что как только я передаю строку «s», запрос изменится с post_type => «any» на post_type = «post», что не подходит для моих целей. Если я не передаю 's', все работает отлично.

Затем я также попытался создать свой собственный запрос следующим образом:

 $pageposts = $wpdb->get_results($wpdb->prepare(" SELECT wp_posts.* FROM wp_posts WHERE 1=1 aND wp_posts.post_type IN ('post', 'page', 'attachment') AND (wp_posts.post_status = 'publish') AND (((wp_posts.post_title LIKE %s) OR (wp_posts.post_content LIKE %s))) ORDER BY wp_posts.post_date DESC LIMIT 0, 8 ",array('%'.$string.'%'))); $wpdb->show_errors(); $wpdb->print_error(); 

Но я просто продолжаю получать:

 <div id='error'> <p class='wpdberror'><strong>WordPress database error:</strong> []<br /> <code>SELECT option_value FROM wp_options WHERE option_name = 'aiosp_post_title_format' LIMIT 1</code></p> </div> 

Есть ли какой-либо правильный способ сделать то, что я пытаюсь? Мой плагин состоит из простой формы, которая должна показывать десять названий => hiperlink для заданного ajax-поиска.

Спасибо всем за помощь!

Ошибки шва происходят из другого источника, а не из вашего запроса. Вы не используете таблицу wp_options. Так что, возможно, пропуск

$ Wpdb-> show_errors (); $ Wpdb-> print_error ();

заставит все работать. Но, вероятно, в другом месте есть ошибка.

Чтобы получить представление о том, как создать помощник поиска AJAX, вы можете проверить здесь: http://www.wpcodelab.com/archives/create-a-custom-ajax-search-for-wordpress