Создание таблиц для WordPress с помощью PHP

Admin MySQL, MySQL Errors, PHP, WordPress

Создать таблицы для базы данных сайта на WordPress можно не только через phpMyAdmin, но и посредством кода.

Для создания таблиц в WordPress достаточно один раз запустить скрипты с кодом ниже.

Пример 1

Создаём таблицу с 2 колонками: id и type. В ней же создадим 2 строки. В строку type поместим какое-нибудь содержимое.

function createTables()
{
    global $wpdb;
    $table_name = $wpdb->prefix ."new_table_name";

    $sql = "CREATE TABLE if NOT EXISTS $table_name (
          `id` BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
          `type` TINYTEXT
        );";

    require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
    dbDelta($sql);

    echo 'Таблица создана';

    $wpdb->insert($table_name, ['type' => 'Содержимое 1']);
    $wpdb->insert($table_name, ['type' => 'Содержимое 1']);

    exit;
}

Пример 2

function createTables()
{
    global $wpdb;
    $tableName = $wpdb->prefix . 'new_table_name';

    $sql = "CREATE TABLE if NOT EXISTS $tableName (
          `id` BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
          `number` BIGINT,
          `type_id` BIGINT,
          `votes` MEDIUMTEXT
        );";

    require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
    dbDelta($sql);

    echo 'Таблица создана';
    exit;
}

Возможные ошибки

Если при создании таблицы возникнет подобная ошибка:

Ошибка базы данных WordPress: [You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near »id’ BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY, `number` BIGINT, ‘ at line 2]
CREATE TABLE if NOT EXISTS new_table_name ( ‘id’ BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY, `number` BIGINT, `type_id` BIGINT, `votes` MEDIUMTEXT )

То проблема кроется в кавычках. Недопустимо использовать одинарные кавычки. Нужны специальные кавычки такого типа:

`

У сайта нет цели самоокупаться, поэтому на сайте нет рекламы. Но если вам пригодилась информация, можете лайкнуть страницу, оставить комментарий или отправить мне подарок на чашечку кофе.

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

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи:
"Создание таблиц для WordPress с помощью PHP"