私はデータベースを使ってプラグインを作成し始めたところです。私はプラグインをアクティブにするときにカスタムデータベースを作成することを知っています。フィールド名、フィールドタイプを追加するように、フロントエンドでテーブルを作成できるかどうかを知りたいだけです。また、行の値を作成してみましたが、値がテーブルに挿入されていないようです。これがテーブルに値を追加するための私のコードです。
function test_get_log_table_columns(){
return array(
'log_id'=> '%d',
'user_id'=> '%d',
'activity'=>'%s'
);
}
function insert_data_into_table(){
global $wpdb;
$logid=$_POST['logid'];
$userid=$_POST['userid'];
//Set default values
$data = wp_parse_args($data, array(
'user_id'=> get_current_user_id(),
'date'=> current_time('timestamp'),
));
//Check date validity
if( !is_float($data['date']) || $data['date'] <= 0 )
return 0;
//Convert activity date from local timestamp to GMT mysql format
$data['activity_date'] = date_i18n( 'Y-m-d H:i:s', $data['date'], true );
//Initialise column format array
$column_formats = test_get_log_table_columns();
//Force fields to lower case
$data = array_change_key_case ( $data );
//White list columns
$data = array_intersect_key($data, $column_formats);
//Reorder $column_formats to match the order of columns given in $data
$data_keys = array_keys($data);
$column_formats = array_merge(array_flip($data_keys), $column_formats);
$wpdb->insert($wpdb->wptuts_activity_log, $data, $column_formats);
return $wpdb->insert_id;
}
function retrieve_val_data() {
global $wpdb;
}
そしてフロントエンドからテーブルのデータを追加、削除、更新することは可能ですか?プラグインを有効にした後と別のメニューページからデータ値を追加、編集、削除することを意味します。
はい、プラグインを使ってカスタムテーブルのデータを追加、更新、削除することが可能です。
insert_data_into_table()
関数を実行すると、どんなエラーが発生しますか?