Примеры запросов в свою таблицу базы данных 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