<?php /* * Plugin Name: Wordpress Admin Table * Description: 관리자 페이지 테이블 예제 플러그인 * Version: 1.0.0 * Author: HiSEON * Author URI: https://hiseon.me/ */ class admin_table_plugin { protected static $_instance = null; public static function instance() { if (is_null(self::$_instance)) { self::$_instance = new self(); } return self::$_instance; } protected function __construct() { } private function __clone() {} private function __sleep() {} private function __wakeup() {} public function get_table_name() { global $wpdb; return $wpdb->prefix.'customers2'; } public function install() { global $wpdb; $table_name = $this->get_table_name(); if($wpdb->get_var("SHOW TABLES LIKE '$table_name'") != $table_name) { $sql = "CREATE TABLE $table_name ( id mediumint(9) NOT NULL AUTO_INCREMENT, field_x text NOT NULL, field_y text NOT NULL, UNIQUE KEY id (id) ) ;"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); } } } function ATP() { return admin_table_plugin::instance(); } function admin_table_activate() { ATP()->install(); } register_activation_hook(__FILE__, 'admin_table_activate');