Intereting Posts
Пользовательская таксономия – выпадающая WordPress не может найти таксономии пользователей во внешнем интерфейсе Отсутствует аргумент 2 для apply_filter Выполните действие, когда сообщение обновляется / публикуется Лучший способ получить идентификатор пользователя для функции get_users? URL-адрес настраиваемого типа сообщения должен быть / {category-name} / {custom-post-type-title} Мета-запросы – должна ли работа вложенности после WP 4.1? Почему is_home () работает правильно? Как удалить параметр «Показать панель инструментов»? Посты URL-адреса, такие как site.com/category/the-post-title Сообщение Thumbnail help Изменение URL-адреса входа wp без плагина Сортировка метазначения в массиве последовательностей в pre_get_post Переключить виджет в wordpress (построитель бобра) обратный код В новом API пользовательского интерфейса темы, как отправить значение с фронта обратно на панель администратора?

Как правильно избежать переменных запроса, которые будут использоваться в WP_Query

У меня есть пользовательские переменные запроса, которые добавляются через query_vars . Например, «промышленность».

В действии pre_get_posts я pre_get_posts и добавляю таксономический запрос, если есть значение для параметра «industry», например:

 add_action( 'pre_get_posts', 'alter_posts'); function alter_posts( $q ) { $tax_query = array(); // industry taxonomy if ( get_query_var( 'industry' ) ) { $tax_query[] = array( 'taxonomy' => $my_taxonomy, 'field' => 'slug', 'terms' => get_query_var( 'industry' ) ); } // set all previously determined values to the query $q->set( "tax_query", $tax_query ); } 

Как правильно get_query_var( 'industry' ) переменную запроса, которую я получаю через get_query_var( 'industry' ) ?

Я использую функцию esc_sql , например esc_sql( get_query_var( 'industry' ) ) ? Каков правильный способ справиться с экранированием переменных запроса?

Большое спасибо, Даша

Solutions Collecting From Web of "Как правильно избежать переменных запроса, которые будут использоваться в WP_Query"

Функция для действия pre_get_posts использует объект WP_Query ( http://codex.wordpress.org/Plugin_API/Action_Reference/pre_get_posts )

При использовании таких функций, как get_posts или классы, такие как WP_Query и WP_User_Query, WordPress заботится о необходимой дезинфекции при запросе базы данных. Однако при извлечении данных из пользовательской таблицы или при выполнении прямого SQL-запроса в базе данных – надлежащая дезинфекция зависит от вас.

– Коды Tuts +: Санитарная обработка данных и проверка с помощью WordPress

Поэтому в этом случае вам не нужно избегать запросов.