WordPresssをフレームワークとして使い、関数や仕組みを利用して管理システムを開発

このエントリーをはてなブックマークに追加

フロント部分はもちろん、ブログ機能、ユーザー管理機能、データベース機能等、システム開発が楽になる関数が沢山あります。WordPressの関数や機能は様々なシステム開発に活用可能です。既存のテンプレートを使わず、HTMLを自分でゴリゴリ書いていく場合には以下の方法がオススメです。

関数を利用する

<?php 
require_once( dirname( __FILE__ ) . '/../wp-load.php' );
// wp-load.phpの場所に応じてパスは書き換え
?>

この一文のみを書けばOK。WordPressの関数やテンプレート内function.phpに書いた関数も呼び出し可能になります。

実際のサンプル

<?php require_once( dirname( __FILE__ ) . '/../wp-load.php' ); ?>
<!DOCTYPE html>
<html <?php language_attributes(); ?> prefix="og: http://ogp.me/ns#" class="no-js no-svg">
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<head>
		<title>Sample</title>
		<link href="<?php echo get_template_directory_uri(); ?>/style.css?<?php echo date('Ymd-Hi'); ?>" rel="stylesheet">
	</head>
	<body class="">
		<h1>SamplePage</h1>
		<div>
			<?php echo home_url(); ?>
		</div>
		<div>
			<?php
				if (is_user_logged_in()){
					echo "<div>ログインしています。</div>";
					$user = wp_get_current_user();
					echo "<div>ID:".$user->ID."</div>";
					echo "<div>ログイン:".$user->user_login."</div>";
					echo "<div>Email:".$user->user_email."</div>"; 
					echo "<div>Name:".$user->display_name."</div>"; 
				} else { 
					echo "<div>ログインしていません。</div>";
				}
			?>			
		</div>
		<?php include 'footer.php';?>
	</body>
</html>

この方法を用いれば、WordPressで大体何でも作れるようになります。CSSについてはデフォルトを読み込ませずに、bootstrap等のCSSフレームワークを用いると良いと思います。

こんな時はWordPressをフレームワークとして利用すると便利

・WordPressにある程度詳しい。
・ブログ機能やユーザーログイン機能を利用したい。
・SEO対策が必要。(WordPressはデフォルトでSEO対策がほぼ出来ている)

注意点

・バージョンアップの頻度が早いので、マメに対応する必要あり。
・プラグインは最小限に。利用数ゼロでも良いくらい。(Jquery・CSS等の読み込み重複、本体バージョンアップに伴う修正対応等が面倒)
・自己流オレオレPHPになりがちなので、複数名で利用する時は注意。(数年後の自分のためにも!)

個人的には、bootstrapと組み合わせてよく使います。ブログ機能、ユーザーログイン・管理機能に加え、画像のアップロード処理機能等もかなり便利です。