-
ID:j/S45g さんの質問

phpを勉強しはじめている者です。よろしくお願いします。

/index.php
/aaa/index.php
/aaa/bbb/index.php

のようなディレクトリ構成のサイトがありまして、ファイル間をリンクさせるときとか、サイト全体で共通で使っている画像のパスを指定するとき、階層の深さをきにしなくていいようにしたいです。

ルート階層から(または絶対パスで)指定したいのですが、その場合、どんなソースを書いたらいいのでしょうか。

ファイルをインクルードする時は、
<?php include( $_SERVER[’DOCUMENT_ROOT’] . ’/inc/inc_header.php’); ?>

と書いたらできたんですが、リンクや画像の指定のときとかはどうしたらいいでしょうか。

どうぞよろしくお願いします。

みんなの回答 1 件

ID:UNyc.d さんの回答

おっしゃるとおり絶対パスを使うといいです。
たとえば、ttp://example.com/aaa/bbb/index.php にリンクしたいときは、a要素のhref属性に/aaa/bbb/index.php と書けば、どこからでもリンク可能です。
img要素による画像の指定などの場合でも同様です。

ID:.hH1fZ

ありがとうございます。 ルートパスの場合、普通に、/(スラッシュ)から書けばよかったのですね^_^ インクルードの書き方が、$_SERVER[’DOCUMENT_ROOT’]とかつけないといけないので、画像のパスやリンクでもそういう処理が必要なのかとおもっておりました。
また、絶対パス、の部分なのですが、ttp://~(自身のドメイン)の意味で、これで指定したいときはどうしたらよいでしょうか。SEO的にも、そのほうがいいようなのですが、リンクの箇所全部に個別でttp://~をつけてしまうと、例えばドメインが変更されたり、ttps://などになったときに全部変更になるので、出来れば一括で指定する方法があればよいと思うのですが・・・どうぞよろしくお願いします。

ID:x7t/cG

PHPなら、適当なグローバル変数に入れておいて、絶対URLを書くときにそれを使うようにすればいいと思います。
ただ、URLにドメインまで書いておいたほうがSEO的にいいというのは本当かどうか怪しいです。Googleをはじめとするまともな検索エンジンなら書かなくても分かるはずなので。

ID:.hH1fZ

ありがとうございます。URLの話はアヤシイのですね。

phpで変数にドメインURLをいれて設定するのには具体的にどう書きますでしょうか・・

<?php
$url_path = ttp://abcdef.co.jp/
?>

<a href="<?php echo $urlpath; ?>">

??とやっても全然うまくいきません(T_T)
よろしくお願いします。。

最終更新日:2016-03-18 (1,089 views)

関連するトピックス

ページ上部に戻る