ワードプレス(WordPress)で前後の記事へのページネーションを実装する
ホームページに訪れた方のサイト内の滞留時間を高めるために、関連のある記事へのリンクを設置…
WordPress(ワードプレス)で専用の機能を実装する際にプラグインを利用することが多いなか、テーマの適応時に機能追加(データベースの作成)ができる方法があったのでメモ。
function theme_activate() {
global $pagenow;
if(is_admin() && $pagenow == "themes.php" && isset($_GET["activated"])) {
do_action('theme_activate');
}
}
add_action('init', 'theme_activate');
function create_theme_tables() {
global $wpdb;
$table_name = $wpdb->prefix.'tbl_link';
//テーブルが存在していなければ作成する
if ($wpdb->get_var("SHOW TABLES LIKE {$table_name}") != $table_name) {
if(!empty($wpdb->charset)){
$charset_collate = "DEFAULT CHARACTER SET {$wpdb->charset} ";
}
if(!empty($wpdb->collate)){
$charset_collate .= "COLLATE {$wpdb->collate}";
}
$sql = "CREATE TABLE {$table_name} (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`state` int(11) NOT NULL,
`url` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) {$charset_collate} AUTO_INCREMENT=1;";
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
dbDelta( $sql );
}
}
add_action('theme_activate', 'create_theme_tables');