Приведено описание возможностей объекта $wpdb по взаимодействию с базой данных CMS WordPress. Приведены ссылки на описание наиболее часто используемых методов класса.
Класс wpdb системы WordPress
В PHP скриптах WordPress реализован класс для взаимодействия с базой данных. Он представлен переменной $wpdb, находится в файле /wp-includes/class-wpdb.php и предоставляет администратору системы управления контентом WordPress готовый и удобный инструментарий для взаимодействия с базами данных MySQL. С его помощью можно работать не только с таблицами базы данных WordPress, но и с дополнительными таблицами, как WordPress, так и любой другой базы данных, единственное, надо учесть, что объект $wpdb работает только с текущим подключением к БД, в нашем случае с базой данных системы WordPress. Для взаимодействия с другими базами данных необходимо создать новый экземпляр класса $wpdb со своими параметрами соединения к требуемой базе данных.
И последнее, для доступа к методам объекта внутри пользовательских функций переменную, которая ссылается на объект, т.е., $wpdb, надо сделать глобальной, иначе переменная с таким именем будет интерпретироваться как локальная переменная функции. Для этого внутри функции надо прописать
global $wpdb; // глобализация объекта
Перечень основных методов класса $wpdb
Код объекта хорошо документирован, где находится — приведено выше. Для тех же, кому нужно описание методов, привожу их список с кратким описанием. Более детальную информацию по приведенным методам с примерами использования можно получить перейдя по ссылке интересуемого метода.
- $wpdb->query( ‘строка_запроса’ ) — выполняет SQL запрос к базе данных;
- $wpdb->get_results( ‘строка_запроса’, ‘тип выхода’ ) — возвращает запрошенный набор данных;
- $wpdb->get_row( ‘строка_запроса’, тип выхода, смещение_строки ) — возвращает одну запись таблицы;
- $wpdb->get_var( ‘строка_запроса’, смещение_колонки, смещение_строки) — возвращает значение ячейки таблицы;
- $wpdb->get_col( ‘строка_запроса’, смещение_колонки ) — возвращает столбцец таблицы;
- $wpdb->prepare( ‘строка_запроса’ [, параметр1, параметр2 … ] ) — защищает запрос от внедрения SQL кода;
- $wpdb->insert( table, $data, $format ) — вставляет в таблицу новую запись;
- $wpdb->update( $table, $data, $where, $data_format = null, $where_format = null ) — изменяет запись таблицы;
- $wpdb->get_col_info( ‘вид информации’, смещение_колонки ) — возвращает справочную информацию о запрошенной колонке или колонках.
- $wpdb->flush() — очищает кзш SQL запросов;