プラグイン用のテーブルを作成するには

WordPressをインストールする際にMySQLに作成されるテーブルのほかに、自作プラグインでもテーブルを作成することができる。アクションフックのregister_activation_hookを定義しておくとプラグインが有効になった際に関数が呼ばれるので、ここでテーブルを作成する。テーブル名にはWordPressの接頭辞を使用すること。
以下は、wp_sampleというテーブルを作成する例。

function myActivation() {

	global $wpdb;

	$table_name = $wpdb->prefix . "sample";
	if($wpdb->get_var("show tables like '$table_name'") != $table_name) {

		$sql = "create table " .$table_name ." (
				ID bigint not null auto_increment,
				`name` varchar(64) NOT NULL,
				`furigana` varchar(64) default NULL,
				`url` varchar(64) default NULL,
				primary key(ID)
			)";

		$results = $wpdb->query($sql);
	}
}

register_activation_hook(__FILE__, 'myActivation');

プラグインが無効化された際の処理は以下を使用する。

register_deactivation_hook(__FILE__, 'myDeactivation_');

コメントを残す

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>