昨今の WordPress 人気にあやかって、「WordPress スニペット」とか「WordPress functions.php カスタマイズ」とかで検索すると、functions.php を使ってできる簡単なカスタマイズ方法が出てきます。
これらを functions.php で管理してるとテーマを変更した時とか、コピペしなおさなきゃ行けなくなって面倒くさいことこの上ありません。
このカスタマイズやっぱ要らないなーとか思っても、すでにどこに書いていたか分からなくなっちゃうなんてこともしばしば。
そんなわけで、私はこれらのスニペットについては簡単なプラグインを作って管理してます。
# 昔は my-hacks.php ってファイルを使って管理できたんですが、WordPress 2.8 以降から非推奨になっちゃいました。
プラグインのソースは、こんな感じです。
これを wp-content/plugins ディレクトリの下に hacks とかってディレクトリを作って hacks.php とかって名前で保存してください。
<?php /* Plugin Name: Hacks Plugin URI: Description: Version: 0.1 Author: Author URI: */ $hack_dir = trailingslashit(dirname(__FILE__)) . 'my-hacks/'; opendir($hack_dir); while(($ent = readdir()) !== false) { if(!is_dir($ent) && strtolower(substr($ent,-4)) == ".php") { include_once($hack_dir.$ent); } } closedir(); ?>
プラグインを有効化する前にプラグインが入っている hacks ディレクトリの下にさらに my-hacks ってサブディレクトリを作成しておきましょう。
このプラグインを有効にすると wp-content/plugins/hacks/my-hacks ディレクトリにある拡張子が .php なファイルをすべて読み込んでくれます。
追加したいスニペットがあったら、それを一つずつ php ファイルに書いて wp-content/plugins/hacks/my-hacks ディレクトリに保存してやればOK。
スニペットを使用したくなくなったら wp-content/plugins/hacks/my-hacks ディレクトリの該当 php ファイルを消してやれば良いです。
こうやって、簡単なプラグインを作っておくとテーマを変更しても functions.php にスニペットを追加しなくて良いので、管理がラクチンになりますね。
ピンバック: WordPressのコードスニペットを書くのは functions.php か自作プラグインか | Gatespace's Blog
ピンバック: オリジナルの functions.php を変更せずにスニペットを簡単に管理する | B型生活
ピンバック: WordPressのコードスニペットを書くのは functions.php か自作プラグインか | Gatespace's Blog
ピンバック: WordPressのプラグインを自作する | 高田商店
プラグインを使わずいろんな機能をfunctionsに盛り込んで一生懸命サイトを作っても、
テーマはやっぱり完成形ってなくて、その時十分に吟味して作ったつもりでもやがて変更(機能面やデザイン面)の時期が来ますよね。
そのときやっぱり管理の容易性が出てくるのでこの記事は役に立っています、ありがとうございます。
ピンバック: functions.php を書き換えずに欲しい追加機能を管理する方法 | わぷーにそそられて!
ピンバック: 素人が初めて開発する WordPress プラグインのための雛形 | わぷーにそそられて!
ピンバック: テーマの functions.php を書き換えずに WP プラグインを開発! | ZERO BASE
ピンバック: すげぇ〜 素人でも WordPress 用プラグインが開発できた! | ZERO BASE
ピンバック: WordPress のプラグイン開発は素人でもできる!? | ZERO BASE
ピンバック: WordPressのマルチサイト利用時に新規サイト作成時のデフォルトデータを変更する | Simple Colors
ピンバック: パラメータでカスタマイズしやすいWordPressのパンくずナビを作ってみた | Simple Colors
ピンバック: パラメータでカスタマイズしやすいWordPressのページナビを作ってみた | Simple Colors