Intereting Posts
Переписывает для перенесенного сайта Joomla на WordPress Добавление столбца в таблицу wp_posts или объединение таблицы wp_posts с другой таблицей Как остановить перенаправление из домена в WordPress Мультисайты с несколькими доменами Как использовать сообщения wp-запроса с текущим мета-значением в текстовом виджете Изменить виджет страниц и создать плагин? Несколько одиночных установок WordPress с центральной пользовательской базой Добавление фильтра таксономии в список администратора для пользовательского типа сообщений? как я могу определить, что значение параметра изменилось? Создание пользовательских таксономий атрибутов Woocommerce из плагина Лучшее место для wp_register_script () и wp_register_style () Умышленное принудительное сбой Вход в систему WordPress Создание страницы результатов поиска из пользовательского типа сообщения в плагине? Пул соединений WordPress Cron запускает мою функцию каждый раз, когда wp-admin посещается

Как извлекать значения из базы данных WP на основе выбранного значения параметра путем onchange с помощью PHP?

Я извлекаю данные из WP db и показываю в списке выбора. Но я не могу сохранить выбранное значение параметра в переменной php. И я не могу отображать данные на основе выбранного значения. Данные должны отображаться при изменении окна выбора (onChange)

<select id="mySelect" name="taskOption"> <option>Choose Your Area</option> <?php $results = $wpdb->get_results( "SELECT * FROM $table_name"); foreach ( $results as $result ) { echo '<option value="'.$result->id.'">'.$result->area_name.'</option>'; } ?> </select> 

Вы можете использовать приведенный ниже пример для использования Ajax в wordpress. Эта статья объясняет это довольно хорошо.

  1. Основная функция jquery для использования

     wp_enqueue_script( 'ajax-scripts', url-to-your-file/plugin-ajax.js', __FILE__ ) , array( 'jquery' ), '1.0.0', true ); jQuery(function($) { $(document).ready(function(){ $('#mySelect').on( 'change' , function(){ var newValue = $(this).val(); $.ajax({ type: 'POST', url: ajaxurl, // use ajax_params.ajax_url if using in plugin dataType: 'json', data: { action: 'yourFunction', newValue: newValue }, success: function(response) { console.log(response); }, error: function(errorThrown){ console.log(errorThrown); } }) }) }) }); 
  2. Подцепите свою функцию

     add_action( 'wp_ajax_yourFunction', 'yourFunction' ); function yourFunction(){ $newValue = $_POST['newValue']; //Query whatever you want to with the $newValue } 

Если вы используете его в плагине, вам нужно сначала локализовать свой скрипт.

 //Localize the script for ajax purposes wp_localize_script( 'ajax-scripts', 'ajax_params', array( 'ajax_url' => admin_url( 'admin-ajax.php' ) ) );