template.phpでサイトのベースURLを取得します


7

template.phpでベースURLを取得するにはどうすればよいですか?

以下のどれも動作しません。

global $base_url;
global $base_path;
global $base_root;

回答:


11

base_path()いつも動くはずの機能を使えます。

正直に言うと、返ってくるだけな$GLOBALS['base_path']ので、global $base_pathステートメントは正常に機能するはずです。


ええ、でもこれはうまくいきました。$ globalsがtemplate.phpで利用できない可能性があります
esafwan

これは、コンテンツの追加ページにリンクするビューのPHPヘッダーを作成するのに適しています。<a href="<?php echo base_path(); ?> node / add / offer ">新しいオファーを作成</a>
Joe Beuckman 2013

8

base_path()生産するだけ"/"

ドメインを含む完全なURLを取得するには、以下を使用する必要があります。 $GLOBALS['base_url']


1
ビューのPHPでも機能し、サイトのURLを取得します<?php print $ GLOBALS ['base_url']。 "/"; ?>グローバルPHPで記述
Waluyo Adi Siswanto 2017年


1

これは質問に直接答えるものではありませんが、関連があるようです。ノードのエイリアスパスと組み合わせるためにドメイン名/ベースURLを探している場合は、代わりに次のような絶対URLを取得します。

$absoluteurl = url('node/' . $nid, array('absolute' => TRUE));

// http://example.com/content/aliased_path

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.