えー、タイトルの通りなんですが WordPress でプラグイン開発している時に非常に便利な関数として get_file_data() ってのがあります。
いま、久しぶりに Codex みたら、ほとんど説明を放棄してますね。
最近出た WordPressプラグイン開発のバイブルっていう本でちらっと触れておいたので、そこから引用します。
$plugin_data = get_file_data( __FILE__, array( 'version' => 'Version'));
$plugin_version = $plugin_data['version'];
プラグインやテーマのヘッダー情報を取得するには get_file_data() 関数を使用します。
プラグインの冒頭にはコメント形式でプラグイン名やバージョン、テキストドメインがヘッダー情報として書かれています。
たとえば、プラグインのバージョン情報をこちらから読み出し、wp_enqueue_script() 関数で JavaScript のバージョン情報を変更したり、翻訳ファイルのテキストドメインやドメインパスなどを取得して load_textdomain() 関数で翻訳ファイルを読み込むときに使用できると思います。
プラグインのヘッダー情報を使って一元管理ができるため、ソース中にハードコードする必要がなくなります。
また、他のプラグインやテーマのバージョンに依存するような処理を書きたい場合にも使えるでしょう。
WordPress に最初からついてくるプラグイン Hello Dolly のメタ情報を取得した結果は以下の通りです。
$data = get_file_data( ABSPATH.'wp-content/plugins/hello.php',
array( 'name' => 'Plugin Name',
'version' => 'Version',
'uri' => 'Plugin URI',
'description' => 'Description',
'author' => 'Author',
'author_uri' => 'Author URI',
'textdomain' => 'Text Domain',
'textdomain_path' => 'Domain Path',
));
var_dump($data);
array(8) {
["name"]=>
string(11) "Hello Dolly"
["version"]=>
string(3) "1.6"
["uri"]=>
string(41) "http://wordpress.org/plugins/hello-dolly/"
["description"]=>
string(295) "This is not just a plugin, it symbolizes the hope and enthusiasm of an entire generation summed up in two words sung most famously by Louis Armstrong: Hello, Dolly. When activated you will randomly see a lyric from <cite>Hello, Dolly</cite> in the upper right of your admin screen on every page."
["author"]=>
string(14) "Matt Mullenweg"
["author_uri"]=>
string(13) "http://ma.tt/"
["textdomain"]=>
string(0) ""
["textdomain_path"]=>
string(0) ""
}
実は、この get_file_data() 関数なんですが、WordPress プラグインの規定のヘッダ情報だけでなく、独自にセットした情報も取ってくることができるんです。
続きを読む →