• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「プラグイン・コンテンツディレクトリを特定する」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(残りを和訳。)
 
(他の1人の利用者による、間の2版が非表示)
1行目: 1行目:
{{NeedTrans|一部}}
 
__TOC__
 
 
WordPress プラグインのコードを書いている時、WordPress インストール内やプラグイン・テーマのさまざまなファイルやフォルダを参照しなくてはいけないことがよくあります。
 
WordPress プラグインのコードを書いている時、WordPress インストール内やプラグイン・テーマのさまざまなファイルやフォルダを参照しなくてはいけないことがよくあります。
  
WordPress は、あるファイルやディレクトリがどこにあるのかを簡単に判定できる関数をいくつか提供しています。プラグイン内で ar<tt>wp-content</tt> ディレクトリへの参照を決め打ちで書いたり、WordPress [[#Constants|内部定数]]を使ったりする代わりに、常にこれらの関数を使うようにしましょう。
+
WordPress は、あるファイルやディレクトリがどこにあるのかを簡単に決定できる関数をいくつか提供しています。プラグイン内で <tt>wp-content</tt> ディレクトリへの参照を決め打ちで書いたり、WordPress [[#Constants|内部定数]]を使ったりする代わりに、常にこれらの関数を使うようにしましょう。
  
WordPress はユーザーが <tt>wp-content</tt> ディレクトリを好きな位置に置けるようにしているのを忘れないことが重要です。プラグインが <tt>wp-content/plugins</tt> ディレクトリに存在することや、アップロードファイルが <tt>wp-content/uploads</tt> に置かれていることや、テーマファイルが <tt>wp-content/themes</tt> の中にあることは絶対に前提にすべきではありません。
+
WordPress はユーザーが <tt>wp-content</tt> ディレクトリを好きな位置に置けるようにしているのを忘れないことが重要です。プラグインが <tt>wp-content/plugins</tt> ディレクトリに存在することや、アップロードしたファイルが <tt>wp-content/uploads</tt> に置かれていることや、テーマファイルが <tt>wp-content/themes</tt> の中にあることを当然と思うのは絶対に避けなければなりません。
  
上記に関連しますが、PHP の __FILE__ マジック定数は symlink を自動的に解決するため、もし <tt>wp-content</tt>、<tt>wp-content/plugins</tt>、または個別のプラグインディレクトリが symlink で参照されている場合、これらの関数は正しく動作しません。
+
上記に関連しますが、PHP の <code>__FILE__</code> マジック定数はシンボリックリンクを自動的に解決するため、もし <tt>wp-content</tt>、<tt>wp-content/plugins</tt>、または個別のプラグインディレクトリがシンボリックリンクされている場合、これらの関数は正しく動作しません。
  
 +
<div id="Common_Usage">
 
== よくある使い方 ==
 
== よくある使い方 ==
 +
</div>
  
If your plugin includes JavaScript files, CSS files or other external files, then it's likely you'll need the URL to these files so you can load them into the page. To do this you should use the [[関数リファレンス/plugins_url|plugins_url()]] function like so:
+
プラグインが JavsScript ファイルや CSS ファイルや他の外部ファイルを含む場合、ページへ読み込むためにそれらのファイルの URL が必要となることがよくあるでしょう。そのためには [[関数リファレンス/plugins_url|plugins_url()]] を使って次のようにします:
  
 
  plugins_url( 'myscript.js', __FILE__ );
 
  plugins_url( 'myscript.js', __FILE__ );
  
This will return the full URL to myscript.js, such as <tt>example.com/wp-content/plugins/myplugin/myscript.js</tt>.
+
これは myscript.js への完全 URL を返します。例えば <tt>example.com/wp-content/plugins/myplugin/myscript.js</tt> のようになります。
  
To load your plugins' JavaScript or CSS into the page you should use [[関数リファレンス/wp_enqueue_script|wp_enqueue_script()]] or [[関数リファレンス/wp_enqueue_style|wp_enqueue_style()]] respectively, passing the result of <tt>plugins_url()</tt> as the file URL.
+
プラグインの JavaScript CSS をページへ読み込むには、それぞれ [[関数リファレンス/wp_enqueue_script|wp_enqueue_script()]] [[関数リファレンス/wp_enqueue_style|wp_enqueue_style()]] を使うべきです。その時にファイルの URL として <tt>plugins_url()</tt> の戻り値を渡します。
  
 +
<div id="Available_Functions">
 
== 利用可能な関数 ==
 
== 利用可能な関数 ==
 +
</div>
  
WordPress includes many other functions for determining paths and URLs to files or directories within plugins, themes, and WordPress itself. See the individual Codex pages for each function for complete information on their use.
+
WordPress はプラグインやテーマや WordPress 自体のファイルやディレクトリのパスおよび URL を決定する関数を他にもたくさん持っています。それらの詳しい使い方については各関数の個別 Codex ページを見てください。
  
 +
<div id="Plugins">
 
=== プラグイン ===
 
=== プラグイン ===
 +
</div>
  
 
  [[関数リファレンス/plugins_url|plugins_url()]]
 
  [[関数リファレンス/plugins_url|plugins_url()]]
  [[関数リファレンス/plugin_dir_url|plugin_dir_url()]]
+
  [[関数リファレンス/plugin_dir_url|plugin_dir_url()]] /[[:en:Function Reference/plugin_dir_url|en]]
  [[関数リファレンス/plugin_dir_path|plugin_dir_path()]]
+
  [[関数リファレンス/plugin_dir_path|plugin_dir_path()]] /[[:en:Function Reference/plugin_dir_path|en]]
 
  [[関数リファレンス/plugin_basename|plugin_basename()]]
 
  [[関数リファレンス/plugin_basename|plugin_basename()]]
  
 +
<div id="Themes">
 
=== テーマ ===
 
=== テーマ ===
 +
</div>
 +
 
  [[関数リファレンス/get_template_directory_uri|get_template_directory_uri()]]
 
  [[関数リファレンス/get_template_directory_uri|get_template_directory_uri()]]
 
  [[関数リファレンス/get_stylesheet_directory_uri|get_stylesheet_directory_uri()]]
 
  [[関数リファレンス/get_stylesheet_directory_uri|get_stylesheet_directory_uri()]]
 
  [[関数リファレンス/get_stylesheet_uri|get_stylesheet_uri()]]
 
  [[関数リファレンス/get_stylesheet_uri|get_stylesheet_uri()]]
  [[関数リファレンス/get_theme_root_uri|get_theme_root_uri()]]
+
  [[関数リファレンス/get_theme_root_uri|get_theme_root_uri()]] /[[:en:Function Reference/get_theme_root_uri|en]]
 
  [[関数リファレンス/get_theme_root|get_theme_root()]]
 
  [[関数リファレンス/get_theme_root|get_theme_root()]]
  [[関数リファレンス/get_theme_roots|get_theme_roots()]]
+
  [[関数リファレンス/get_theme_roots|get_theme_roots()]] /[[:en:Function Reference/get_theme_roots|en]]
 
  [[関数リファレンス/get_stylesheet_directory|get_stylesheet_directory()]]
 
  [[関数リファレンス/get_stylesheet_directory|get_stylesheet_directory()]]
 
  [[関数リファレンス/get_template_directory|get_template_directory()]]
 
  [[関数リファレンス/get_template_directory|get_template_directory()]]
  
 +
<div id="Site_Home">
 
=== サイトホーム ===
 
=== サイトホーム ===
 +
</div>
  
 
  [[テンプレートタグ/home_url|home_url()]]
 
  [[テンプレートタグ/home_url|home_url()]]
 +
[[関数リファレンス/get_home_path|get_home_path()]] /[[:en:Function_Reference/get_home_path|en]]
  
 
=== WordPress ===
 
=== WordPress ===
48行目: 58行目:
 
  [[関数リファレンス/admin_url|admin_url()]]
 
  [[関数リファレンス/admin_url|admin_url()]]
 
  [[テンプレートタグ/site_url|site_url()]]
 
  [[テンプレートタグ/site_url|site_url()]]
  [[関数リファレンス/content_url|content_url()]]
+
  [[関数リファレンス/content_url|content_url()]] /[[:en:Function Reference/content_url|en]]
  [[関数リファレンス/includes_url|includes_url()]]
+
  [[関数リファレンス/includes_url|includes_url()]] /[[:en:Function Reference/includes_url|en]]
  [[関数リファレンス/wp_upload_dir|wp_upload_dir()]]
+
  [[関数リファレンス/wp_upload_dir|wp_upload_dir()]] /[[:en:Function Reference/wp_upload_dir|en]]
  
 +
<div id="Multisite">
 
=== マルチサイト ===
 
=== マルチサイト ===
 +
</div>
  
  [[関数リファレンス/get_admin_url|get_admin_url()]]
+
  [[関数リファレンス/get_admin_url|get_admin_url()]] /[[:en:Function Reference/admin_url|en]]
 
  [[テンプレートタグ/get_home_url|get_home_url()]]
 
  [[テンプレートタグ/get_home_url|get_home_url()]]
 
  [[テンプレートタグ/get_site_url|get_site_url()]]
 
  [[テンプレートタグ/get_site_url|get_site_url()]]
  [[関数リファレンス/network_admin_url|network_admin_url()]]
+
  [[関数リファレンス/network_admin_url|network_admin_url()]] /[[:en:Function Reference/network_admin_url|en]]
  [[関数リファレンス/network_site_url|network_site_url()]]
+
  [[関数リファレンス/network_site_url|network_site_url()]] /[[:en:Function Reference/network_site_url|en]]
 
  [[テンプレートタグ/network_home_url|network_home_url()]]
 
  [[テンプレートタグ/network_home_url|network_home_url()]]
  
 +
<div id="Constants">
 
== 定数 ==
 
== 定数 ==
 +
</div>
  
WordPress はコンテンツやプラグインディレクトリのへのパスを判定するために以下の定数を使います。これらはプラグインやテーマ内で直接使うべきではありませんが、情報の完全性を期するためにここへ記載します。
+
WordPress はコンテンツやプラグインディレクトリのへのパスを決定するために以下の定数を使います。これらをプラグインやテーマ内で直接使うべきではありませんが、情報の完全性を期するためにここへ記載します。
  
 
<pre>
 
<pre>
71行目: 85行目:
 
WP_PLUGIN_URL  // フル URL、最後のスラッシュなし
 
WP_PLUGIN_URL  // フル URL、最後のスラッシュなし
  
// Available per default in MS, not set in single site install
+
// マルチサイトの場合にデフォルトで利用可能、シングルサイトのインストールでは未設定
// Can be used in single site installs (as usual: at your own risk)
+
// シングルサイトのインストールで利用しても構わない(いつものごとく自己責任で)
UPLOADS  
+
UPLOADS // (セットされるなら ABSPATH からの相対パスで表した uploads フォルダ) (例えば /wp-content/uploads)
// (If set, uploads folder, relative to ABSPATH) (for e.g.: /wp-content/uploads)
+
 
</pre>
 
</pre>
  
== 関連 ==
+
<div id="Related">
 +
== 関連項目 ==
 +
</div>
  
 
{{Directory URL Tags}}
 
{{Directory URL Tags}}
  
{{原文|Determining_Plugin_and_Content_Directories|141439}}<!-- 2014-02-23T02:12:26 Programmin 版 -->
+
{{原文|Determining_Plugin_and_Content_Directories|153645}} <!-- 07:00, 27 August 2015 Neil pie 版 -->
  
 
[[Category:プラグイン]]
 
[[Category:プラグイン]]
 
[[Category:上級トピック]]
 
[[Category:上級トピック]]
 
[[Category:WordPress の開発]]
 
[[Category:WordPress の開発]]
 +
 +
[[en:Determining_Plugin_and_Content_Directories]]

2015年10月10日 (土) 14:57時点における最新版

WordPress プラグインのコードを書いている時、WordPress インストール内やプラグイン・テーマのさまざまなファイルやフォルダを参照しなくてはいけないことがよくあります。

WordPress は、あるファイルやディレクトリがどこにあるのかを簡単に決定できる関数をいくつか提供しています。プラグイン内で wp-content ディレクトリへの参照を決め打ちで書いたり、WordPress の内部定数を使ったりする代わりに、常にこれらの関数を使うようにしましょう。

WordPress はユーザーが wp-content ディレクトリを好きな位置に置けるようにしているのを忘れないことが重要です。プラグインが wp-content/plugins ディレクトリに存在することや、アップロードしたファイルが wp-content/uploads に置かれていることや、テーマファイルが wp-content/themes の中にあることを当然と思うのは絶対に避けなければなりません。

上記に関連しますが、PHP の __FILE__ マジック定数はシンボリックリンクを自動的に解決するため、もし wp-contentwp-content/plugins、または個別のプラグインディレクトリがシンボリックリンクされている場合、これらの関数は正しく動作しません。

プラグインが JavsScript ファイルや CSS ファイルや他の外部ファイルを含む場合、ページへ読み込むためにそれらのファイルの URL が必要となることがよくあるでしょう。そのためには plugins_url() を使って次のようにします:

plugins_url( 'myscript.js', __FILE__ );

これは myscript.js への完全 URL を返します。例えば example.com/wp-content/plugins/myplugin/myscript.js のようになります。

プラグインの JavaScript や CSS をページへ読み込むには、それぞれ wp_enqueue_script()wp_enqueue_style() を使うべきです。その時にファイルの URL として plugins_url() の戻り値を渡します。

利用可能な関数

WordPress はプラグインやテーマや WordPress 自体のファイルやディレクトリのパスおよび URL を決定する関数を他にもたくさん持っています。それらの詳しい使い方については各関数の個別 Codex ページを見てください。

プラグイン

plugins_url()
plugin_dir_url() /en
plugin_dir_path() /en
plugin_basename()

テーマ

get_template_directory_uri()
get_stylesheet_directory_uri()
get_stylesheet_uri()
get_theme_root_uri() /en
get_theme_root()
get_theme_roots() /en
get_stylesheet_directory()
get_template_directory()

サイトホーム

home_url()
get_home_path() /en

WordPress

admin_url()
site_url()
content_url() /en
includes_url() /en
wp_upload_dir() /en

マルチサイト

get_admin_url() /en
get_home_url()
get_site_url()
network_admin_url() /en
network_site_url() /en
network_home_url()

定数

WordPress はコンテンツやプラグインディレクトリのへのパスを決定するために以下の定数を使います。これらをプラグインやテーマ内で直接使うべきではありませんが、情報の完全性を期するためにここへ記載します。

WP_CONTENT_DIR  // 最後のスラッシュなし、フルパスのみ
WP_CONTENT_URL  // フル URL
WP_PLUGIN_DIR  // フルパス、最後のスラッシュなし
WP_PLUGIN_URL  // フル URL、最後のスラッシュなし

// マルチサイトの場合にデフォルトで利用可能、シングルサイトのインストールでは未設定
// シングルサイトのインストールで利用しても構わない(いつものごとく自己責任で)
UPLOADS  // (セットされるなら ABSPATH からの相対パスで表した uploads フォルダ) (例えば /wp-content/uploads)
WordPress ディレクトリ:
home_url() ホーム URL http://www.example.com
site_url() サイトディレクトリ URL http://www.example.com または http://www.example.com/wordpress
admin_url() 管理画面ディレクトリ URL http://www.example.com/wp-admin
includes_url() /en インクルードディレクトリ URL http://www.example.com/wp-includes
content_url() /en コンテンツディレクトリ URL http://www.example.com/wp-content
plugins_url() /en プラグインディレクトリ URL http://www.example.com/wp-content/plugins
wp_upload_dir() /en アップロードディレクトリ URL (配列を返す) http://www.example.com/wp-content/uploads


最新英語版: WordPress Codex » Determining_Plugin_and_Content_Directories最新版との差分