WP_Themeオブジェクト

今まで知らなかったのが不思議なくらい基本的な内容。テーマの情報をちゃんとWordPressはオブジェクトとして保持してくれている。何がやりたかったかというと、JavaScriptやCSSをwp_enqueue_script関数やwp_enqueue_style関数で読み込む際にバージョンを設定していたのですが、以下のように手動でバージョン設定してました。

$version = '1.0.0';
wp_enqueue_script( 'theme-script', get_template_directory_uri() . '/js/script.js', array( 'jquery' ), $version );

$version変数にリテラル値を設定してJavaScriptやCSSの設定を変更したらバージョンの値を変更するという何ともアナログな方法。レビュー依頼を受けてソースコードをチェックしていたらこんな記述を見かけました。

$version = wp_get_theme()->get( 'Version' );
wp_enqueue_script( 'theme-script', get_template_directory_uri() . '/js/script.js', array( 'jquery' ), $version );

なるほど、wp_get_theme()オブジェクトでテーマのバージョンをそのまま設定しているのか。賢い。バージョン以外にも以下のようなものが取得できるようです。以下、WordPressCodexより引用。

Name
テーマの style.css で付けられたテーマ名 
ThemeURI
テーマの Web ページの URI
Description
テーマの概要
Author
テーマ作者名
AuthorURI
テーマ作者のウェブサイト
Version
テーマのバージョン
Template
(オプション — 子テーマで使用) 親テーマのフォルダ名
Status
テーマが公開されている場合のステータス
Tags
テーマを説明するために使用するタグ
TextDomain
テーマを翻訳するときに使うテキストドメイン
DomainPath
テーマ翻訳ファイルのパス

style.css のヘッダー部分で記述する内容はほとんど取得できる模様。勉強になるなぁ。