Tworzenie 2 tabel w bazie danych za pomocą wtyczki w WordPress

function nazwa_funkcji_instalujacej()
{
    global $wpdb;

    $table_name = $wpdb->prefix . 'pierwsza_tabela'; 
    $table_name2 = $wpdb->prefix . 'druga_tabela';

    $sql = "CREATE TABLE IF NO EXISTS `" . str_replace('`','', $table_name) . "` ( 
      id int(11) NOT NULL AUTO_INCREMENT,
      name tinytext NOT NULL,
      age int(11) NULL,
      PRIMARY KEY  (id)
    );";

    $sql .= "CREATE TABLE IF NO EXISTS`" . str_replace('`','', $table_name2) . "` (
      id int(11) NOT NULL AUTO_INCREMENT,
      email VARCHAR(20) NOT NULL,
      PRIMARY KEY  (id)

    );";
    require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
    dbDelta($sql);
}
register_activation_hook(__FILE__, 'nazwa_funkcji_instalujacej');

5 i 6 – Tworzę sobie zmienne zawierające nazwę nowo dodawanych tabel $wpdb->prefix wyciąga mi aktualny prefix z jakim jest zainstalowany WordPress

8 i 15 – Zmienna z zapytaniem do bazy. Po drugim wystąpieniu zmiennej $sql musi być .= bo inaczej pierwsze zapytanie zostanie zastąpione przez drugie. str_replace('`','', $table_name) usuwa zbędny i podejrzany znaczek…

22 – wykonanie zapytania. Z resztą… Skoro piszecie wtyczkę to zapewne wiecie o co tu biega…

Szczegóły w CODEX -> https://codex.wordpress.org/Creating_Tables_with_Plugins

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.