get_template_directory_uriとget_stylesheet_directory_uriの違い

Last Updated: 2015 年 08 月 18 日 댓글

WordPressでjQueryやcssをフック(エンキュー)したときに、スタイルシートのアドレス指定にget_template_directory_uriやget_stylesheet_directory_uriを使用します。

예:

wp_enqueue_script('custom-script', get_stylesheet_directory_uri() . '/js/custom_script.js', array( 'jquery' ) ); // 테마 폴더 아래 /js/custom_script.js 파일을 enqueue시킴

その後、 get_template_directory_uriget_stylesheet_directory_uriの違いは何でしょうか?

  • get_template_directory_uriは、現在のテーマのディレクトリのURIを指します。 子テーマ(チャイルドテーマ)が使用されている場合でも、 親テーマのディレクトリ URIが返されます。
  • get_stylesheet_directory_uriは、現在のテーマ/子テーマのディレクトリのURIを指します。 子テーマ(チャイルドテーマ)が使用される場合 子テーマのディレクトリ URIが返されます。

両者の違いは、get_template_directory_uriは無条件親テーマのディレクトリのURIを返しますが、get_stylesheet_directory_uriは、子テーマがある場合、子テーマのディレクトリのURIを返すということです。 私はenqueueするとき、通常get_stylesheet_directory_uriを使用しており、実際にも問題なく動作しています。 もし子テーマがある場合は、親テーマの下のフォルダを呼び出すには、get_template_directory_uriを必ず使用し、子テーマを使用しない場合には、どちらを使用しても構わないします。

<img src="<?php echo get_stylesheet_directory_uri(); ?>/images/aternus.png" alt="" width="" height="" />

上記のようなコードの場合、現在のテーマ(子テーマがある場合、子テーマ)内のimagesフォルダ内のpngファイルを呼び出しています。 子テーマがある場合は、子テーマのフォルダの下に/ images /フォルダを作成します。


コメントを残す

コメント