Changeset 3771981
- Timestamp:
- 10/29/2026 03:04:53 AM (8 days ago)
- Location:
- taketin-to-wp-membership
- Files:
-
- 2 edited
- 1 copied
-
tags/3.0.7-beta5 (copied) (copied from taketin-to-wp-membership/trunk )
-
tags/3.0.7-beta5/taketin-to-wp-membership.php (modified) (6 diffs)
-
trunk/taketin-to-wp-membership.php (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
taketin-to-wp-membership/tags/3.0.7-beta5/taketin-to-wp-membership.php
r3771963 r3771981 4 4 Plugin URI: https://taketin.com/plugin/ 5 5 Description: TAKETIN Marketing Platformと連携したメンバーサイトをWordpressで作成するプラグインです。 6 Version: 3.0.7-beta 46 Version: 3.0.7-beta5 7 7 Author: TAKETIN 8 8 Author URI:http://taketin.com/ … … 46 46 47 47 // Initialize constants. 48 define('TMP_MEM_VERSION', '3.0.7-beta 4');49 define('TMP_MEM_DB_VERSION', '1. 3');48 define('TMP_MEM_VERSION', '3.0.7-beta5'); 49 define('TMP_MEM_DB_VERSION', '1.4'); 50 50 define('TMP_MEM_DEBUG', false); 51 51 define('TMP_MEM_PREFIX', 'taketin_mp_membership'); … … 161 161 function update_database_tables() 162 162 { 163 $version = get_site_option('tmp-db-version');164 165 163 global $wpdb; 166 $sql = ''; 167 $charsetCollate = ''; 168 169 // テーブルを更新 170 $tableName = $wpdb->prefix . 'tmp_members'; 171 if ($version == 1.0) { 172 $sql = sprintf( 173 " 174 CREATE TABLE %s ( 175 `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID', 176 `name` varchar(255) NOT NULL COMMENT '名前', 177 `email` varchar(255) NOT NULL COMMENT 'メールアドレス', 178 `unique_code` varchar(255) NOT NULL COMMENT 'ユニークコード', 179 `ticket_list_serialized` text NOT NULL COMMENT '所持チケットID一覧', 180 `progress` float NOT NULL COMMENT '', 181 `memberships_id` int(11) DEFAULT 0 COMMENT '会員レベルID', 182 `memberships_check_date` datetime NOT NULL COMMENT '会員レベル判定日時', 183 `trusted_devices` longtext COMMENT '信頼済みデバイス一覧', 184 `last_login` datetime NOT NULL COMMENT '最終ログイン', 185 `last_login_ip` varchar(255) COMMENT '最終ログインIP', 186 `login_token` varchar(255) COMMENT 'ログイントークン', 187 `created` datetime NOT NULL COMMENT '作成日時', 188 PRIMARY KEY (`id`) 189 ) %s; 190 ", 191 $tableName, 192 $charsetCollate 193 ); 194 } 195 if (!$version || $version == 1.1) { 196 $sql = sprintf( 197 " 198 CREATE TABLE %s ( 199 `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID', 200 `display_name` varchar(255) NOT NULL COMMENT '表示名', 201 `name` varchar(255) NOT NULL COMMENT '名前', 202 `email` varchar(255) NOT NULL COMMENT 'メールアドレス', 203 `unique_code` varchar(255) NOT NULL COMMENT 'ユニークコード', 204 `ticket_list_serialized` text NOT NULL COMMENT '所持チケットID一覧', 205 `progress` float NOT NULL COMMENT '', 206 `memberships_id` int(11) DEFAULT 0 COMMENT '会員レベルID', 207 `memberships_check_date` datetime NOT NULL COMMENT '会員レベル判定日時', 208 `trusted_devices` longtext COMMENT '信頼済みデバイス一覧', 209 `last_login` datetime NOT NULL COMMENT '最終ログイン', 210 `last_login_ip` varchar(255) COMMENT '最終ログインIP', 211 `login_token` varchar(255) COMMENT 'ログイントークン', 212 `created` datetime NOT NULL COMMENT '作成日時', 213 PRIMARY KEY (`id`) 214 ) %s; 215 ", 216 $tableName, 217 $charsetCollate 218 ); 219 } 164 165 // テーブルを更新(更新前のバージョンに関係なく最新の定義で dbDelta する。足りない列だけが追加される) 220 166 require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 221 dbDelta( $sql);167 dbDelta(tmp_members_table_sql()); 222 168 $tableName = $wpdb->prefix . 'tmp_members'; 223 169 $trusted_devices_column = $wpdb->get_row("SHOW COLUMNS FROM {$tableName} LIKE 'trusted_devices'", ARRAY_A); … … 232 178 function update_database_check() 233 179 { 234 if (get_site_option('tmp-db-version') != TMP_MEM_DB_VERSION) { 180 // DBバージョンはサイトごとのオプション(マルチサイトではサイトごとにテーブルが分かれるため) 181 if (get_option('tmp-db-version') != TMP_MEM_DB_VERSION) { 235 182 update_database_tables(); 236 183 } … … 238 185 add_action('plugins_loaded', 'update_database_check'); 239 186 240 function create_database_tables() 241 { 242 243 $settings = TaketinMpSettings::get_instance(); 244 187 /** 188 * 会員テーブル({接頭辞}tmp_members)の定義。新規作成と更新で同じ定義を使う 189 */ 190 function tmp_members_table_sql() 191 { 245 192 global $wpdb; 246 $sql = ''; 247 $charsetCollate = ''; 248 249 $tableName = $wpdb->prefix . 'tmp_memberships'; 250 251 // charset 252 if (!empty($wpdb->charset)) { 253 $charsetCollate = "DEFAULT CHARACTER SET " . $wpdb->charset; 254 } 255 256 if (!empty($wpdb->collate)) { 257 $charsetCollate .= " COLLATE " . $wpdb->collate; 258 } 259 260 // テーブルを作成 261 $sql = sprintf( 262 " 263 CREATE TABLE %s ( 264 `id` int(11) NOT NULL AUTO_INCREMENT, 265 `name` varchar(100) NOT NULL, 266 `levelclass` int(11) NOT NULL DEFAULT '0' COMMENT '階級', 267 `category_list` longtext, 268 `page_list` longtext, 269 `post_list` longtext, 270 `attachment_list` longtext, 271 `custom_post_list` longtext, 272 `comment_list` longtext, 273 PRIMARY KEY (id) 274 ) %s; 275 ", 276 $tableName, 277 $charsetCollate 278 ); 279 require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 280 dbDelta($sql); 281 282 // テーブルを作成 283 $tableName = $wpdb->prefix . 'tmp_memberships_tickets'; 284 $sql = sprintf( 285 ' 286 CREATE TABLE %s ( 287 id int(11) AUTO_INCREMENT NOT NULL, 288 membership_id int(11), 289 ticket_id int(11), 290 PRIMARY KEY (id) 291 ) %s; 292 ', 293 $tableName, 294 $charsetCollate 295 ); 296 297 dbDelta($sql); 298 299 // テーブルを作成 300 $tableName = $wpdb->prefix . 'tmp_memberships_categories'; 301 $sql = sprintf( 302 ' 303 CREATE TABLE %s ( 304 id int(11) AUTO_INCREMENT NOT NULL, 305 membership_id int(11), 306 category_id int(11), 307 PRIMARY KEY (id) 308 ) %s; 309 ', 310 $tableName, 311 $charsetCollate 312 ); 313 314 dbDelta($sql); 315 316 // テーブルを作成 317 $tableName = $wpdb->prefix . 'tmp_members'; 318 $sql = sprintf( 193 return sprintf( 319 194 " 320 195 CREATE TABLE %s ( … … 336 211 ) %s; 337 212 ", 213 $wpdb->prefix . 'tmp_members', 214 $wpdb->get_charset_collate() 215 ); 216 } 217 218 function create_database_tables() 219 { 220 221 $settings = TaketinMpSettings::get_instance(); 222 223 global $wpdb; 224 $sql = ''; 225 $charsetCollate = ''; 226 227 $tableName = $wpdb->prefix . 'tmp_memberships'; 228 229 // charset 230 if (!empty($wpdb->charset)) { 231 $charsetCollate = "DEFAULT CHARACTER SET " . $wpdb->charset; 232 } 233 234 if (!empty($wpdb->collate)) { 235 $charsetCollate .= " COLLATE " . $wpdb->collate; 236 } 237 238 // テーブルを作成 239 $sql = sprintf( 240 " 241 CREATE TABLE %s ( 242 `id` int(11) NOT NULL AUTO_INCREMENT, 243 `name` varchar(100) NOT NULL, 244 `levelclass` int(11) NOT NULL DEFAULT '0' COMMENT '階級', 245 `category_list` longtext, 246 `page_list` longtext, 247 `post_list` longtext, 248 `attachment_list` longtext, 249 `custom_post_list` longtext, 250 `comment_list` longtext, 251 PRIMARY KEY (id) 252 ) %s; 253 ", 338 254 $tableName, 339 255 $charsetCollate 340 256 ); 341 257 require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 342 258 dbDelta($sql); 259 260 // テーブルを作成 261 $tableName = $wpdb->prefix . 'tmp_memberships_tickets'; 262 $sql = sprintf( 263 ' 264 CREATE TABLE %s ( 265 id int(11) AUTO_INCREMENT NOT NULL, 266 membership_id int(11), 267 ticket_id int(11), 268 PRIMARY KEY (id) 269 ) %s; 270 ', 271 $tableName, 272 $charsetCollate 273 ); 274 275 dbDelta($sql); 276 277 // テーブルを作成 278 $tableName = $wpdb->prefix . 'tmp_memberships_categories'; 279 $sql = sprintf( 280 ' 281 CREATE TABLE %s ( 282 id int(11) AUTO_INCREMENT NOT NULL, 283 membership_id int(11), 284 category_id int(11), 285 PRIMARY KEY (id) 286 ) %s; 287 ', 288 $tableName, 289 $charsetCollate 290 ); 291 292 dbDelta($sql); 293 294 // テーブルを作成 295 dbDelta(tmp_members_table_sql()); 343 296 344 297 //Create login page -
taketin-to-wp-membership/trunk/taketin-to-wp-membership.php
r3771963 r3771981 4 4 Plugin URI: https://taketin.com/plugin/ 5 5 Description: TAKETIN Marketing Platformと連携したメンバーサイトをWordpressで作成するプラグインです。 6 Version: 3.0.7-beta 46 Version: 3.0.7-beta5 7 7 Author: TAKETIN 8 8 Author URI:http://taketin.com/ … … 46 46 47 47 // Initialize constants. 48 define('TMP_MEM_VERSION', '3.0.7-beta 4');49 define('TMP_MEM_DB_VERSION', '1. 3');48 define('TMP_MEM_VERSION', '3.0.7-beta5'); 49 define('TMP_MEM_DB_VERSION', '1.4'); 50 50 define('TMP_MEM_DEBUG', false); 51 51 define('TMP_MEM_PREFIX', 'taketin_mp_membership'); … … 161 161 function update_database_tables() 162 162 { 163 $version = get_site_option('tmp-db-version');164 165 163 global $wpdb; 166 $sql = ''; 167 $charsetCollate = ''; 168 169 // テーブルを更新 170 $tableName = $wpdb->prefix . 'tmp_members'; 171 if ($version == 1.0) { 172 $sql = sprintf( 173 " 174 CREATE TABLE %s ( 175 `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID', 176 `name` varchar(255) NOT NULL COMMENT '名前', 177 `email` varchar(255) NOT NULL COMMENT 'メールアドレス', 178 `unique_code` varchar(255) NOT NULL COMMENT 'ユニークコード', 179 `ticket_list_serialized` text NOT NULL COMMENT '所持チケットID一覧', 180 `progress` float NOT NULL COMMENT '', 181 `memberships_id` int(11) DEFAULT 0 COMMENT '会員レベルID', 182 `memberships_check_date` datetime NOT NULL COMMENT '会員レベル判定日時', 183 `trusted_devices` longtext COMMENT '信頼済みデバイス一覧', 184 `last_login` datetime NOT NULL COMMENT '最終ログイン', 185 `last_login_ip` varchar(255) COMMENT '最終ログインIP', 186 `login_token` varchar(255) COMMENT 'ログイントークン', 187 `created` datetime NOT NULL COMMENT '作成日時', 188 PRIMARY KEY (`id`) 189 ) %s; 190 ", 191 $tableName, 192 $charsetCollate 193 ); 194 } 195 if (!$version || $version == 1.1) { 196 $sql = sprintf( 197 " 198 CREATE TABLE %s ( 199 `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID', 200 `display_name` varchar(255) NOT NULL COMMENT '表示名', 201 `name` varchar(255) NOT NULL COMMENT '名前', 202 `email` varchar(255) NOT NULL COMMENT 'メールアドレス', 203 `unique_code` varchar(255) NOT NULL COMMENT 'ユニークコード', 204 `ticket_list_serialized` text NOT NULL COMMENT '所持チケットID一覧', 205 `progress` float NOT NULL COMMENT '', 206 `memberships_id` int(11) DEFAULT 0 COMMENT '会員レベルID', 207 `memberships_check_date` datetime NOT NULL COMMENT '会員レベル判定日時', 208 `trusted_devices` longtext COMMENT '信頼済みデバイス一覧', 209 `last_login` datetime NOT NULL COMMENT '最終ログイン', 210 `last_login_ip` varchar(255) COMMENT '最終ログインIP', 211 `login_token` varchar(255) COMMENT 'ログイントークン', 212 `created` datetime NOT NULL COMMENT '作成日時', 213 PRIMARY KEY (`id`) 214 ) %s; 215 ", 216 $tableName, 217 $charsetCollate 218 ); 219 } 164 165 // テーブルを更新(更新前のバージョンに関係なく最新の定義で dbDelta する。足りない列だけが追加される) 220 166 require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 221 dbDelta( $sql);167 dbDelta(tmp_members_table_sql()); 222 168 $tableName = $wpdb->prefix . 'tmp_members'; 223 169 $trusted_devices_column = $wpdb->get_row("SHOW COLUMNS FROM {$tableName} LIKE 'trusted_devices'", ARRAY_A); … … 232 178 function update_database_check() 233 179 { 234 if (get_site_option('tmp-db-version') != TMP_MEM_DB_VERSION) { 180 // DBバージョンはサイトごとのオプション(マルチサイトではサイトごとにテーブルが分かれるため) 181 if (get_option('tmp-db-version') != TMP_MEM_DB_VERSION) { 235 182 update_database_tables(); 236 183 } … … 238 185 add_action('plugins_loaded', 'update_database_check'); 239 186 240 function create_database_tables() 241 { 242 243 $settings = TaketinMpSettings::get_instance(); 244 187 /** 188 * 会員テーブル({接頭辞}tmp_members)の定義。新規作成と更新で同じ定義を使う 189 */ 190 function tmp_members_table_sql() 191 { 245 192 global $wpdb; 246 $sql = ''; 247 $charsetCollate = ''; 248 249 $tableName = $wpdb->prefix . 'tmp_memberships'; 250 251 // charset 252 if (!empty($wpdb->charset)) { 253 $charsetCollate = "DEFAULT CHARACTER SET " . $wpdb->charset; 254 } 255 256 if (!empty($wpdb->collate)) { 257 $charsetCollate .= " COLLATE " . $wpdb->collate; 258 } 259 260 // テーブルを作成 261 $sql = sprintf( 262 " 263 CREATE TABLE %s ( 264 `id` int(11) NOT NULL AUTO_INCREMENT, 265 `name` varchar(100) NOT NULL, 266 `levelclass` int(11) NOT NULL DEFAULT '0' COMMENT '階級', 267 `category_list` longtext, 268 `page_list` longtext, 269 `post_list` longtext, 270 `attachment_list` longtext, 271 `custom_post_list` longtext, 272 `comment_list` longtext, 273 PRIMARY KEY (id) 274 ) %s; 275 ", 276 $tableName, 277 $charsetCollate 278 ); 279 require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 280 dbDelta($sql); 281 282 // テーブルを作成 283 $tableName = $wpdb->prefix . 'tmp_memberships_tickets'; 284 $sql = sprintf( 285 ' 286 CREATE TABLE %s ( 287 id int(11) AUTO_INCREMENT NOT NULL, 288 membership_id int(11), 289 ticket_id int(11), 290 PRIMARY KEY (id) 291 ) %s; 292 ', 293 $tableName, 294 $charsetCollate 295 ); 296 297 dbDelta($sql); 298 299 // テーブルを作成 300 $tableName = $wpdb->prefix . 'tmp_memberships_categories'; 301 $sql = sprintf( 302 ' 303 CREATE TABLE %s ( 304 id int(11) AUTO_INCREMENT NOT NULL, 305 membership_id int(11), 306 category_id int(11), 307 PRIMARY KEY (id) 308 ) %s; 309 ', 310 $tableName, 311 $charsetCollate 312 ); 313 314 dbDelta($sql); 315 316 // テーブルを作成 317 $tableName = $wpdb->prefix . 'tmp_members'; 318 $sql = sprintf( 193 return sprintf( 319 194 " 320 195 CREATE TABLE %s ( … … 336 211 ) %s; 337 212 ", 213 $wpdb->prefix . 'tmp_members', 214 $wpdb->get_charset_collate() 215 ); 216 } 217 218 function create_database_tables() 219 { 220 221 $settings = TaketinMpSettings::get_instance(); 222 223 global $wpdb; 224 $sql = ''; 225 $charsetCollate = ''; 226 227 $tableName = $wpdb->prefix . 'tmp_memberships'; 228 229 // charset 230 if (!empty($wpdb->charset)) { 231 $charsetCollate = "DEFAULT CHARACTER SET " . $wpdb->charset; 232 } 233 234 if (!empty($wpdb->collate)) { 235 $charsetCollate .= " COLLATE " . $wpdb->collate; 236 } 237 238 // テーブルを作成 239 $sql = sprintf( 240 " 241 CREATE TABLE %s ( 242 `id` int(11) NOT NULL AUTO_INCREMENT, 243 `name` varchar(100) NOT NULL, 244 `levelclass` int(11) NOT NULL DEFAULT '0' COMMENT '階級', 245 `category_list` longtext, 246 `page_list` longtext, 247 `post_list` longtext, 248 `attachment_list` longtext, 249 `custom_post_list` longtext, 250 `comment_list` longtext, 251 PRIMARY KEY (id) 252 ) %s; 253 ", 338 254 $tableName, 339 255 $charsetCollate 340 256 ); 341 257 require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 342 258 dbDelta($sql); 259 260 // テーブルを作成 261 $tableName = $wpdb->prefix . 'tmp_memberships_tickets'; 262 $sql = sprintf( 263 ' 264 CREATE TABLE %s ( 265 id int(11) AUTO_INCREMENT NOT NULL, 266 membership_id int(11), 267 ticket_id int(11), 268 PRIMARY KEY (id) 269 ) %s; 270 ', 271 $tableName, 272 $charsetCollate 273 ); 274 275 dbDelta($sql); 276 277 // テーブルを作成 278 $tableName = $wpdb->prefix . 'tmp_memberships_categories'; 279 $sql = sprintf( 280 ' 281 CREATE TABLE %s ( 282 id int(11) AUTO_INCREMENT NOT NULL, 283 membership_id int(11), 284 category_id int(11), 285 PRIMARY KEY (id) 286 ) %s; 287 ', 288 $tableName, 289 $charsetCollate 290 ); 291 292 dbDelta($sql); 293 294 // テーブルを作成 295 dbDelta(tmp_members_table_sql()); 343 296 344 297 //Create login page
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)