19


6

私はWebソリューション用のカスタムAPIを開発していて、MVCデザインパターンを使用しています。 モジュールフォルダーを持っているので、テスト済みのコードを中断することなく、モジュールを出し入れできます。 私の唯一の問題は、CSSをどこにでもロードし、アプリケーションにheadタグのcssファイルを正しくインポートさせたいということです。 私はCodeIgniterがこれをしているのを知っていますが、私はその方法がわからない。

PHPを使用して、CodeIgniterのようにCSSファイルを任意の場所にロードした後、コードでheadタグ内のcssを正しくインポートする方法

前もって感謝します。

8 Answer


29


一度に複数のビューをロードすることも、他のビューの中にビューをロードすることもできます。

だからこの場合私はあなたが1つのヘッダビューを作成することをお勧めします。

例:


そしてそれを次のように呼びます。

$ this-> load-> view( 'header'); $ this-> load-> view( 'view1'); $ this-> load-> view( 'view2');

これにより、ロードするファイル(css、jsなど)を1つのファイルにまとめて制御できます。

Regrads、Pedro @pcamacho


7


あなたの質問は私には少し不明瞭ですが、私は助けるために最善を尽くします。 ビューにCSSファイルを含める方法を単に疑問に思っていますか? もしそうなら、単に以下を使用してください:

@import url( '/ css / styles.css');

CSSフォルダがCodeIgniterプロジェクトのルートにある場合は、CodeIgniterのbase_url()関数を使って次のようなことができます。

@import url( '<?= base_url()?> / css / styles.css');

それはあなたのページが移植性を保ち、正しい絶対URLを持つことを保証します。 お役に立てれば! そうでなかったら、あなたの質問でもう少し具体的であることを試みなさい


3


絶対を使う…


…またはルート相対URI。



3


htaccessファイル内のURLをリダイレクトしていないことも確認してください。cssを許可してください。
  • .htaccessファイル*

RewriteCond $ 1のRewriteEngine!^(index \ .php | images | css | robots \ .txt)RewriteRule ^(。*)$ index.php / $ 1 [L]

また、これが私のヘッダテンプレートに追加したものです。

$ this-> load-> helper( "url"); echo link_tag(base_url()。 'css / styles.css');


2


あなたは私がするのと同じことをすることができます、あなたのビューファイルで以下をしてください


(アプリケーションディレクトリにstylesフォルダを作成した後)次にコントローラで、これを渡します。

$ path = '../system/application';

load→ viewを使ってビューをロードする場合は、\ {pathToApp}を$ array ['path']に変更する必要があります($ arrayを呼び出したものに変更してください)。 。 CodeIgniterの組み込みテンプレートシステムを使用している場合は、すべて設定済みです。 少なくともこの方法では、サイトを移行するときに絶対URLを変更する必要はありません。


1


私が気づいた1つの重要なことはRewriteCondが .htaccess refers to FOLDERS not FILE TYPES. In other words, putting スタイルシートが/ css /フォルダーにない限り、そこの + | css | +`はジャックを実行しません。 実際のフォルダをリストします。そのため、 `+ | styles | +`または `+ | scripts | +`または何でも。 THENを使用すると、 `+" <?= base_url()?> styles / style.css "+(たとえば)が表示されます。 これを理解するのに約2日かかったので、これを読むことが誰かにいくらかの髪と高血圧を救うことを望む。


0


まず、Controller関数を作成して、Codeigniterのcss呼び出し用のHTMLヘルパーをロードします。

_ サンプルコード _

load->helper('html');
        $this->load->helper('url');
        $this->load->view('index');

    }
}
?>

次に、 `+ link_tag `キーワードを使用してcssファイルを呼び出します。 次のような ` index.php +`ファイルにあるこのようなもの


ここで、 `+ css / +`はmoorainbow.cssファイルを含むフォルダーです。


-1


これを行う


しかし、最初にルートディレクトリにcssフォルダを作成し、そこにstyle.cssを置きます。