3ヶ月前に投稿

WordPressでテーマのバージョン情報を取得する

2019年7月11日

この記事は約 4 分で読めます。

4

WordPressで
テーマのバージョン情報を
取得するには
どうするのか調べてみました。

wp_get_theme という関数で、
現在のテーマのバージョンを表示
という Example を発見したのですが、
子テーマを使っていると、
子テーマの情報が表示されるのですね。

<?php
$my_theme = wp_get_theme();
echo $my_theme->get( 'Name' ) . " is version " . $my_theme->get( 'Version' );
?>

では、
親テーマのバージョン情報を取得するには?

wp_get_themeの第一引数にテーマ名を渡すと、そのテーマのバージョンを取得できるので、get_templateで親テーマ名を指定してバージョン情報を取得しています

【WordPress】親テーマ・子テーマのバージョン情報を取得する方法
<?php
  $theme = wp_get_theme(get_template());
  echo $theme->Version;
?>

get_template って何?

get_template – 現在のテーマ名を取得する。
注意
現在のテーマの名前は、 get_option( “template" )で取得できる。このget_templateでは、さらに’template’フィルターで処理された内容を返している。

get_template – 現在のテーマ名を取得する – elearn.jp

なるほど・・・
テーマ名を取得する関数ですか。
その他、
get_optionでも
取得出来るようですね。

上記の情報を参考に
ソースを書いてみると、
こんな感じになりました。

<?php
/* 親テーマ の情報 */
$template_theme_name = wp_get_theme(get_template());
/* 子テーマ の情報 */
$my_child_theme = wp_get_theme();
echo "<div>Theme: " . $template_theme_name->get( 'Name' ) . " is version " . $template_theme_name->get( 'Version' ) . "</div>";
echo "<div>Child Theme: " . $my_child_theme->get( 'Name' ) . " is version " . $my_child_theme->get( 'Version' ) . "</div>";
?>

結果は・・・

Theme: Luxeritas is version 3.7.0.1
Child Theme: Luxeritas Child Theme is version 3.0.0

・・・こんな感じに表示されます。

ちなみに、
get_stylesheetでも
現在のテーマ名を
取得する事ができますが、
こちらは子テーマを使うと
親テーマではなく
子テーマ側の名前が返されます。

get_stylesheet – 現在の スタイルシート の名前を取得します。
これは管理者がセットした現在のフロントエンドテーマのテーマ名です。
テンプレートの名前とスタイルシートの名前はほとんどの場合、同じになります。子テーマを使うと親テーマではなく子テーマ側の名前が返されます

関数リファレンス/get stylesheet – WordPress Codex 日本語版

貴重なお時間を割き、
最後まで
ご高覧いただきまして
有難うございました
WordPressでテーマのバージョン情報を取得する