たくさんの質問と答えを読み、多くの人が同じ質問をした後、私は人々が指示したのと同じ指示に従っていましたが、私の悪いことはうまくいかなかった
動いていない
サンプルコード
<?php
/*
Plugin Name: ContactUs
Plugin URI:
Description: Simple Plugin Developed for Testing purpose
Version: 1.0.0
Author: rajeshw
Author URI: codelisense.com
*/
//Creating table
function contact_installation(){
global $wpdb;
$table_name = $wpdb->prefix. "contactus";
if($wpdb->get_var ('SHOW TABLES LIKE' .$table_name ) != $table_name){
$sql= "CREATE TABLE" .$table_name. "(
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";
require_once (ABSPATH. 'wp-admin/includes/upgrade.php' );
$wpdb->query($sql);
//had replaced the above line with this line
dbDelta($sql);
}
}
register_activation_hook(__FILE__, 'contact_installation');
テーブルが作成されていません...助けてください
あなたのドットと引用表記はファンキーです。これを試して:
if($wpdb->get_var("SHOW TABLES LIKE '$table_name'" ) != $table_name){
$sql= "CREATE TABLE $table_name (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
);";
require_once (ABSPATH. 'wp-admin/includes/upgrade.php' );
dbDelta($sql);
}
このコードを試してください。
"my_db.php"のようなファイルを作成して、このコードを貼り付けてください。
global $table_version;
$table_version = "1.0";
function func_table_contactus(){
creat_table_contactus();
}
function creat_table_contactus(){
global $wpdb;
global $table_version;
$table_contactus = $wpdb->prefix."contactus";
$slider_ver = get_option("table_version");
$check_table_contactus = $wpdb->get_var("SHOW TABLES LIKE '$table_contactus'");
if($check_table_contactus != $table_contactus || $slider_ver != $table_version ) {
$sql= "CREATE TABLE" .$table_name. "(
id INT(6) UNSIGNED NOT NULL AUTO_INCREMENT,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
PRIMARY KEY (id)
)";
require_once(ABSPATH.'wp-admin/includes/upgrade.php');
dbDelta($sql);
update_option("table_version", $table_version);
}
else{
add_option("table_version", $table_version);
}
}
そしてあなたのプラグインのメインファイルで
<?php
/*
Plugin Name: ContactUs
Plugin URI:
Description: Simple Plugin Developed for Testing purpose
Version: 1.0.0
Author: rajeshw
Author URI: codelisense.com
*/
require "my_db.php";
add_action('plugins_loaded', 'func_table_contactus');
あなたがあなたの解決策を見つけることを願っています