web-dev-qa-db-ja.com

毎回globalまたはget_template_directory_uri()でテンプレートディレクトリのURIを取得しますか?

私がよく使うWordpressの機能の1つにget_template_directory_uri()があります。私はできる限りその使用を最小限に抑えるか回避しようとしましたが、私はテーマの特定のページでこの関数を複数回呼び出すことがあります。ほとんどの場合、一連のhrefまたは他の関数の内部(通常はget_template_directory_uri()から生成されたURIを$variableに入れます。ただし、その変数を別のphpファイルに格納する必要があるかもしれません)。

私は、戻り値(私のテーマURI)をグローバルに格納し、それを私のテーマphpファイルの異なる部分に必要なときにecho the globalを使用するのが最善であると思いますか?

私はいまだにベストプラクティスと、変数とグローバルの使い方への道を学んでいます。

ありがとうございました

2
unfulvio

私はその機能にこだわり続けるでしょう。 PHPは速度と効率のために関数をキャッシュします。状況によっては、関数を使うほうが速いよりも変数を使うほうが速いです。

他にも利点があります - あなたがあなたの変数の名前を変更したなら想像してください - あなたはそれが使用されるところのすべてのコードを行って更新しなければならないでしょう。

2
shea

グローバル変数は、どこで設定または変更されているのか簡単にはわからないため、デバッグが困難です。そして特にWordPressでは、すでにあまりにも多くのグローバル変数を使用しているため、プラグイン開発者が すべてのプレフィックス を忘れたり、同じプレフィックスを選択したりするため、衝突が起こる可能性があります偶然にした。

既存の関数名を使用すると、誰もがすぐに表示して修正できるエラーになります。既存のグローバル変数を使用すると、予期せぬ方法でコードが暗黙のうちに変更されます。

1
fuxia