Примеры запросов в свою таблицу базы данных wordpress.

Решено

Приведите пожалуйста пару примеров как делать запросы в базу данных вордпресс с помощью $wpdb. Я создал свою таблицу по вот этому примеру создания таблицы в wp. Теперь мне нужно получить из нее данные, скажите какие способы есть для этого? На сколько я зная можно получать как строку из таблицы так и определенное значение ячейки. Хотелось бы увидеть примеры, в которых учтена безопасность передаваемых переменных в запросе.

Добавить Комментарий
Ответ

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

 function get_results($id_user, $id_product){
 global $wpdb;
 $id_user = esc_sql($id_user);
 $id_product = esc_sql($id_product);
 // получим имя таблиц с префексом
 $table_name = $wpdb->get_blog_prefix() . 'name_table';
 // делаем запрос
 $result = $wpdb->get_results("SELECT * FROM {$table_name} WHERE id_product = {$id_product} AND id_user = ({$id_user}) ORDER BY id_user ASC;", ARRAY_A);
return $result;
 }

get_results — вернет все результаты в виде массива, так как вторым параметром указано значение ARRAY_A

 $result = $wpdb->get_var("SELECT * FROM {$table_name} WHERE id_product = {$id_product} AND id_user = {$id_user};", 2, 0);
 

get_var — вернет значение ячейки. Какую именно брать колонку и строку в результате выборке мы определяем параметрами 2 и 0(2я колонка 0 строка, то есть первая)

 $result = $wpdb->get_row("SELECT * FROM {$table_name} WHERE id_user = {$id_user} AND id_product = {$id_product} ;");
 

get_row — вернет строку, дополнительным параметром можно передать какую по счету начиная с нуля. Если не указывать второй параметр то берется по умолчанию вторая строка.

Более подробно о запросах в базу с помощью wpdb() можно почитать тут: wpdb() — блок wp-kama

Добавить Комментарий

Ваш ответ

Размещая свой ответ, вы соглашаетесь с правилами сайта.