Intereting Posts
Динамическое получение тегов на экране редактирования сообщений Преобразование WP Gallery Plugin в стандартную WP Gallery Одна страница – Несколько родителей? Как я могу получить доступ к «описанию» пункта меню? Как указать общедоступный URL-адрес на внутренний (скрытый) сервер со всеми вытекающими ссылками. Удалите параметр профиля профиля (и другие вещи) из profile.php (in admin) Несколько архивных страниц для пользовательских типов сообщений и таксономий Почему wp_enqueue_script не загружается, включая jquery ui scripts? Настройки API vs Theme Customizer Правильный способ обновления пула таксономии с использованием register_taxonomy? При локализации темы я создаю .mo и .po Как изменить меню для каждого пользователя в плагине? Темы WordPress для неполной установки или установки Проверьте, было ли введено однократное или несколько пользовательских данных Action hook с оберткой html

как создать таблицу во время установки плагина в классе

Я создаю плагин oop base. Итак, как создать таблицу во время установки плагина в стороне класса. Но я не смог создать таблицу. Это мой подход. Что случилось со мной.

class Notification { function __construct() { register_activation_hook( __FILE__, array($this,'jal_install') ); } function jal_install() { global $wpdb; global $jal_db_version; $table_name = $wpdb->prefix . 'fnotice'; $charset_collate = $wpdb->get_charset_collate(); $sql = "CREATE TABLE $table_name ( id INT NOT NULL AUTO_INCREMENT, msg varchar(500) NOT NULL, time DATETIME NOT NULL, type varchar(350) NOT NULL, link varchar(350) NOT NULL, status ENUM('0', '1') NOT NULL default '1', PRIMARY KEY (id) )"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); add_option( 'jal_db_version', $jal_db_version ); } } $obj=new notification; 

Вы должны запустить свой register_activation_hook после создания объекта.

 class Notification { function jal_install() { global $wpdb; global $jal_db_version; $table_name = $wpdb->prefix . 'fnotice'; $charset_collate = $wpdb->get_charset_collate(); $sql = "CREATE TABLE $table_name ( id INT NOT NULL AUTO_INCREMENT, msg varchar(500) NOT NULL, time DATETIME NOT NULL, type varchar(350) NOT NULL, link varchar(350) NOT NULL, status ENUM('0', '1') NOT NULL default '1', PRIMARY KEY (id) )"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); add_option( 'jal_db_version', $jal_db_version ); } } $obj=new Notification(); register_activation_hook( __FILE__, array($obj,'jal_install') );