【WordPressで拡張性に富んだテーマを作るには?】
WordPressのテーマ(テンプレート)には
あらかじめいろんな独自機能がついています。
そこがテーマ作成者の「売り」なのですが、
もしあなたがテーマを作成して配布や販売したいとお考えなら、
バージョンアップで拡張していきやすい作り方を心がけると良いでしょう。
WordPressでは、ページのテンプレートに先だって、
functions.phpが読み込まれます。
なので、テーマ独自の機能はfunctions.phpに記述するのが一般的です。
しかし、1つのファイルに詰め込んでいくと
肥大化して読みづらくなってしまいます。
HTMLの場合なら、インデントやコメントで全体を構造化することで
見通しが悪くなることを防ぐのですが、
PHPではもっと便利な方法があります。
▼functions.phpの中身
<?php require_once locate_template('lib/init.php'); // 初期設定の関数 require_once locate_template('lib/cleanup.php'); // 不要なモノを削除する関数 require_once locate_template('lib/titles.php'); // タイトル出力の関数 require_once locate_template('lib/breadcrumbs.php'); // パンくずリストの関数 require_once locate_template('lib/scripts.php'); // CSSやJavascript関連の関数 require_once locate_template('lib/ads.php'); // 広告関連の関数 require_once locate_template('lib/widgets.php'); // サイドバー、ウィジェットの関数 require_once locate_template('lib/custom.php'); // その他カスタマイズの関数
こんな風にします。
require_once はPHPの命令で、
まだ読み込んでいなければ一度だけ読み込む。
locate_template はWordPressの関数で、
相対パスで指定したテンプレートファイルがあれば読み込む。
というものです。
こうしておけば、長~~い functions.php の中から変更したい場所を探さなくても、
「rssのリンクを消したい」と思ったら lib/cleanup.php の中で処理を追加すれば良い
というように一目瞭然です。
ポイントは、テーマの「売り」となる独自機能を
機能別にファイルを分けておくということです。
functions.php 一辺倒ではなく、
プログラム全体を大きな枠組みで捉えると、
このような作り方を選ぶ機会が出てくるかも知れません。
1つ1つが役目を持った歯車で、全体が動くイメージです。
↓↓↓「自分で作れる力」を身につけたいあなたへ↓↓↓
【1】CODEMYマンツーマンレッスン
codemy-lesson.office-ing.net⇒30分無料相談あり
⇒知りたいことだけ学べる個人レッスン
▼レッスンの記録をご覧いただけます。
https://www.facebook.com/codemy.lesson/
【2】プログラミング講座CODEMY
office-ing.hatenablog.com
⇒動画と個別添削で学べるオンラインレッスン
自分でホームページやプログラムの制作やカスタマイズをできるようなりたい方が
業種・経験・地域を問わず参加されています。