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」のように表示させたい場合は「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」のように表示させたい場合は「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()」は「左から右」の場合「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」のように表示させたい場合は「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」のように表示させたい場合は「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() |
それでは、最後までお読みいただきありがとうございました!
スポンサーリンク