0

私のルートディレクトリには、たくさんの単一ページがあり、次にフォルダ「blog」と「assets」があります。ページには、さまざまなcssとjsを呼び出すためのheader.php / nav.php/footer.phpがあります。

例:header.php内:

<link href="http://beta.rfahaiti.org/assets/css/bootstrap.css" rel="stylesheet">  

次に、私が求めるページで: <?php include 'assets/header.php'; ?>

ただし、これはブログフォルダ内のどのページ(/ blog / news /のindex.phpファイルなど)では機能していないようです。相対リンクと絶対リンクの問題だと思いますが、修正方法がわかりません。質問:header.phpファイルを呼び出すために必要なphpインクルード呼び出しは何ですか?

ありがとう!

4

3 に答える 3

1

インクルードパスは相対的です。試してください。

<?php include '../assets/header.php'; ?>

CSSなどのリソースを参照するHTMLドキュメントでも同じことがわかります。

于 2012-10-21T03:25:23.210 に答える
1

試す:

<?php include '../assets/header.php'; ?>

また

<?php include '../../assets/header.php'; ?>

フォルダ構造によって異なります。

于 2012-10-21T03:25:38.470 に答える
0

あなたが言うように、それは相対的なリンクの問題です。/ blog / newsの2レベル深いページの場合、2レベル戻る必要があります。

../../assets/header.php

以下が完全に間違っていることを指摘してくれたJuanSosaに感謝します

または、次のように書くこともできます。

/assets/header.php

2番目のアプローチは、ある意味でよりクリーンです。ただし、サイトは常にドメインのルートにあると想定していることに注意してください(つまり、サイトがhttp://beta.rfahaiti.org/theapplication/何かに移動した場合、これらのタイプのリンクはすべて壊れます)。

于 2012-10-21T03:25:30.323 に答える