Описание методов get_col(), prepare() класса $wpdb системы WordPress для взаимодействия с базами данных. Даны примеры использования.
Метод $wpdb->get_col( ‘строка_запроса’, смещение_колонки )
Метод выбирает колонку таблицы в виде одномерного массива. Если запрошено более одной колонки, то возвращается лишь одна, указанная в смещении, остальные находятся в переменной переменной last_result.
Синтаксис.
‹?php
$col=$wpdb->get_col(‘строка_запроса’,смещение_колонки);
?›
где,
строка_запроса — текст SQL запроса, который будет выполнен с помощью данного метода.
смещение_колонки — смещение до нужной колонки от начальной, по умолчанию 0(первый столбец набора данных).
Пример1. Выбираем все ссылки, хранящиеся в таблице ссылок WordPress.
‹?php
$links = $wpdb->get_col("SELECT link_url FROM `wp_links`");
?›
Пример2. Выбираем наименования всех установок WordPress.
‹?php
$col = $wpdb->get_col("SELECT option_name FROM `wp_options`");
?›
Метод $wpdb->prepare( ‘строка_запроса’ [, параметр1, параметр2 … ] )
Метод используется для проверки и защиты динамического запроса к базе данных. Поскольку динамический запрос предполагает внедрение в текст запроса сторонних параметров, то эти параметры невольно или злонамеренно могут навредить работе как минимум базы данных. Чтобы этого не произошло, динамические запросы надо защищать методом $wpdb->prepare.
Синтаксис.
‹?php
$query=$wpdb->prepare( ‘строка_запроса’ [, параметр1, параметр2 ... ] );
?›
где,
строка_запроса — текст SQL запроса, в который подставляются значения параметров. В запросе в качестве формальных параметров используются сочетания %s и(или) %d. Первый заменяется строковым значением, второй — числовым.
параметр
rN(строка/чило/массив) — фактические значения заменяемых параметров.
возвращаемое значение — готовый к выполнению SQL запрос.
Пример1. Получаем из базы данных WordPress содержимое конккретного поста.
‹?php
$title='Заголовок1';
$id=11;
$query = $wpdb->prepare("SELECT post_content FROM " ."$wpdb->posts
WHERE " ."post_title = %s AND " ."ID = %d", $title, $id );
?›