これら2つのコードスニペットの違いは何ですか。また、どちらをWordPressプラグインに使用する必要がありますか。
require_once(dirname(__FILE__).'/inc/canagan_admin_functions.php');
require_once( '/inc/canagan_admin_functions.php' );
ありがとう、
マット
最初のものは言うようなものです...
このファイルが配置されているディレクトリの上の
inc
ディレクトリにあるファイルを含めます。
2番目のステートメントは言っています...
サーバールート(
/
)で、inc
フォルダーでcanagan_admin_functions.php
を探してそれを含めます。
最初のものは動作しますが、2番目は動作しません。 2番目は、ファイルシステム全体のルートを調べているところです。ファイルシステムは絶対に存在しません。
ちなみに、複数のファイルにまたがる、あるいはCSSまたはJSファイルをエンキューするプラグインを起動するときはいつでも、私は通常、いくつかの定数を設定して私を助けています。これは の例 です。
<?php
define( 'CD_PLUGIN_PATH', plugin_dir_path( __FILE__ ) );
define( 'CD_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
plugin_dir_path
および plugin_dir_url
は、末尾のスラッシュを含むパス/ URLを常に返すため、Niceです。
それからファイルをインクルード/要求するために、私は定数を使います。インクルードのたびにdirname(__FILE__)
を呼び出さなくてもよくなります。
あなたはそれからファイルをインクルードするために定数を使うことができます...
require_once( CD_PLUGIN_PATH . 'path/to/file.php' );
またはスクリプト/スタイルをエンキューする...
<?php
add_action( 'wp_enqueue_scripts', 'wpse35088_enqueue' );
function wpse35088_enqueue()
{
wp_enqueue_script( 'wpse35088-script', CD_PLUGIN_URL . 'path/to/script.js' );
}