2012-03-20 10 views
1

私は最初のzendアプリケーションを行っています。正式なユーザーズガイドに従って、標準のzendアプリケーション(zend studio 9とZF 1.11)をセットアップし、画像とCSSスタイルシートを私の.phtmlページ。私は「myApplicationName /公共/ CSS」のcssファイルを入れるとすべてが正常に動作しますが、私は、このような「myApplicationName /アプリケーション/レイアウト/ CSS」などの別のディレクトリに入れしようとすると、彼らは考慮されません、 どのような私はphtmlページにそれらをリンクするために使用する必要がありますパスの?Zend Framework、パスに問題があります

私は次のように相対パス、物事を試してみた:、

<link rel="stylesheet" type="text/css" media="screen" href="/application/layouts/css/layout_look_like.css" /> 

が、動作していないよう

私も試したパスを:また

<link rel="stylesheet" type="text/css" media="screen" href="../../css/layout_look_like.css" /> 

と$ this-> baseUrl()を使用していますが、<?php echo $this->baseUrl();?>は何も返しません。

の助けに感謝します。

答えて

0

あなたのCSSファイルはpublicディレクトリ内にある必要があります。 applicationディレクトリに置く必要はありません。 が本当にになる必要がある場合は、publicディレクトリへのシンボリックリンクを作成できます。

は、あなたのビュー/レイアウトに( publicディレクトリに格納されている)CSSファイルを含めるに使用します。下記のおlayout_look_like.cssファイルのコードを言及したように

<?php echo $this->headLink()->appendStylesheet($this->baseUrl('/styles/basic.css')); ?> 
+0

パスの代わりに '$ this-> baseUrl( '/ styles/basic.css')'を使うべきです。それ以外の場合は、アプリケーションがサブディレクトリから実行され、baseUrlが/ – dbrumann

+0

@mahokではない場合に問題が発生する可能性があります。私は答えを編集しました。 – Config

+0

あなたの回答におかげさまで、レイアウトとそのCSSを同じディレクトリに配置する予定でした。 – Believer

2

ウェブサーバーDOCUMENT_ROOT(つまりhttp://yourdomain/)であるため、CSS、画像、JSおよびその他の一般にアクセス可能な静的資産は、publicフォルダの下に存在する必要があります。それを超えて、好きな構造を使うことができます。

+1

しかし、モジュール構造を使用すると、どこでcssファイルとjsファイルを保存する必要がありますか?各モジュールは1つの別々のページを表します。各ページには独自のスタイルとjsスクリプトがあります。とにかくそれらのファイルを/ publicディレクトリに置かなければなりませんか?または、この 'Module/views/scripts/css'またはこの' Module/views/scripts/controllerName/js'を実行する必要がありますか?そして、正確には '/ public'にcssとjsを格納する必要がありますか? layout.phtmlに属するファイルは?しかし、レイアウトのcssとjsを '/ layout/script/css'と'/layoutscript/js'に保存するほうがいいですか? – Green

+1

'/ public'はURL経由でアクセスできる唯一のものですので、モジュール構造から直接css/jsをサーバーすることができます。本当にここに保存したいのであれば、 'Symfony 1.x'のシンボリックリンクをプラグインのインフラストラクチャで似たように使うことができると思います。 – prodigitalson

0

あなたが書く必要が

echo $this->headLink()->appendStylesheet($this->baseUrl('/css/layout_look_like.css')); 

関連する問題