【WordPress】推奨はどれ?「bloginfoの非推奨」忘れちゃうからまとめとく:wpurl/url/siteurl/home/text_direction/stylesheet_url/stylesheet_directory

Wordpresで「jsファイル」や「cssファイル」を追加で読み込みたいとき、テーマフォルダまでのパスを取得します。その際に使う関数が「get_stylesheet_directory_uri()」なのですが、「bloginfo(‘stylesheet_directory’)」でも取得できます。

そこで、「どっちかが非推奨だったよなぁー」といつも悩んでしまいます(笑)。ということで、記事にすることで、記憶の定着を図りたいと思います。

スポンサーリンク

非推奨なのは「bloginfo」(※一部の引数だけ

結論、「bloginfo」で指定する引数の一部が非推奨となっているでした。

テンプレートタグ/bloginfo – WordPress Codex 日本語版」を参考に非推奨に関して確認しました。実際は「非推奨」ではなく、「他の関数が推奨」と書かれています。

bloginfo

最初に、bloginfo()について確認しておきます。

bloginfo()は取得した情報を表示する関数です。取得だけしたい場合は、「get_bloginfo()」を使います。引数によって取得する情報を指定できます。

まとめ

1つずつ見る前に、他に推奨される関数がある引数と関数を表にまとめておきますね。

bloginfoの引数 推奨されている関数
wpurl site_url()
url
siteurl
home
home_url()
text_direction is_rtl()
stylesheet_url get_stylesheet_uri()
stylesheet_directory get_stylesheet_directory_uri()

それでは、「非推奨(他の関数が推奨)となっている引数」一覧です。推奨されている関数と「bloginfo」との違いも書いておきます。

bloginfo( ‘wpurl’ )

管理画面の設定>一般で設定された「WordPress アドレス (URL)」を取得します。

現在は「site_url()」の使用が推奨されています。試してみたところ、実際に同じ値が取得できました。

「bloginfo( ‘wpurl’ )」と「site_url()」の違い

「bloginfo( ‘wpurl’ )」とは違い、「site_url()」は値を取得するだけの関数です。「bloginfo」のように表示させたい場合は「echo」や「<?=?>」などを使用しましょう。

<?php echo site_url(); ?>
<?=site_url()?>

bloginfo( ‘url’ )、bloginfo( ‘siteurl’ )、bloginfo( ‘home’ )

管理画面の設定>一般で設定された「サイトアドレス (URL)」を取得します。
※bloginfo( ‘siteurl’ )とbloginfo( ‘home’ )はVersion 2.2で廃止されています

現在は「home_url()」の使用が推奨されています。試してみたところ、実際に同じ値が取得できました。

「bloginfo( ‘url’ )」と「home_url()」の違い

「bloginfo( ‘url’ )」とは違い、「home_url()」は値を取得するだけの関数です。「bloginfo」のように表示させたい場合は「echo」や「<?=?>」などを使用しましょう。

<?php echo home_url(); ?>
<?=home_url()?>

bloginfo( ‘text_direction’ )

HTMLページの文字の向きを取得します。文字が「左から右」の場合「ltr」(※left to right)、「右から左」の場合「rtl」(※right to left)を取得します。僕たちが慣れているのは「左から右」ですよね。

現在は「is_rtl()」の使用が推奨されています。試してみたところ、「左から右」の場合「False」、「右から左」の場合「True」が返ってきます。関数名「is_rtl」のとおり、「右から左」なのかを判定してくれる関数ですね。

「bloginfo( ‘text_direction’ )」と「is_rtl()」の違い

「bloginfo( ‘text_direction’ )」とは違い、「is_rtl()」は「左から右」の場合「False」、「右から左」の場合「True」を返す関数です。「bloginfo」では文字列で判定する必要がありましたが、「is_rtl」は、シンプルに判定できます。

if (!is_rtl()) {
  // 左から右の場合
}
if (is_rtl()) {
  // 右から左の場合
}

bloginfo( ‘stylesheet_url‘ )

適応しているテーマで使われているスタイルシートの URI を取得します。

現在は「get_stylesheet_uri() 」の使用が推奨されています。試してみたところ、実際に同じ値が取得できました。

「bloginfo( ‘stylesheet_url’ )」と「get_stylesheet_uri()」の違い

「bloginfo( ‘stylesheet_url’ )」とは違い、「get_stylesheet_uri()」は値を取得するだけの関数です。「bloginfo」のように表示させたい場合は「echo」や「<?=?>」などを使用しましょう。

<?php echo get_stylesheet_uri(); ?>
<?=get_stylesheet_uri()?>

ただ、表示ではなく「get_stylesheet_uri()」で取得したURIを関数に渡すケースの方が多いと思います。

bloginfo( ‘stylesheet_directory’ )

適応しているテーマまたは子テーマのスタイルシートがあるディレクトリの URI  を取得します。子テーマを使用している場合、そのディレクトリのURIを取得してくれるので便利です。

現在は「get_stylesheet_directory_uri() 」の使用が推奨されています。試してみたところ、実際に同じ値が取得できました。

「bloginfo( ‘stylesheet_directory’ )」と「get_stylesheet_directory_uri()」の違い

「bloginfo( ‘stylesheet_directory’ )」とは違い、「get_stylesheet_directory_uri()」は値を取得するだけの関数です。「bloginfo」のように表示させたい場合は「echo」や「<?=?>」などを使用しましょう。

<?php echo get_stylesheet_directory_uri(); ?>
<?=get_stylesheet_directory_uri()?>

基本のスタイルシート以外の「cssファイル」や「jsファイル」、「画像」のパスを指定する際に使用するケースが多いと思います。

まとめ

上記のとおり「bloginfo」で使える一部の引数は、他の関数が推奨されていました。

非推奨は今後使用できなくなる可能性もあるので、推奨されている関数を使うように気を付けたいですね。

最後にもう一度、他に推奨される関数がある引数と関数を表を載せておきます。

bloginfoの引数 推奨されている関数
wpurl site_url()
url
siteurl
home
home_url()
text_direction is_rtl()
stylesheet_url get_stylesheet_uri()
stylesheet_directory get_stylesheet_directory_uri()

 

それでは、最後までお読みいただきありがとうございました!

 

 

スポンサーリンク