2016-09-27 6 views
9

の外のディレクトリからファイルをインクルードいくつかの理由がありますが、パターンライブラリに表示するには、/patternsのファイルをiframeにプルする必要があるためです)。ジキル:私は<code>_includes</code>外<code>/patterns</code>ディレクトリを維持する必要があり</p> <p><code> _includes _layouts _site /patterns index.html </code></p> <p>:私は構造一般的に、このように一般的に見える私のジキルサイトで<code>/patterns</code>というディレクトリを、持っている_includes

私はジキールのページに/patternsのファイルを含めたいと思いますが、{% include /patterns/file.html %} doesn't work as it points to theを含む_includes folder. How would I go about including a file from a directory that isn't _includes`を使用していますか?あなたの_config.ymlで

答えて

2

、あなたはそうのようなディレクトリを追加することができます

includes: 
- patterns 

それと同じくらい簡単なの!私のジキルサイトで、ここでのアクションで

https://github.com/pschfr/pschfr.github.io/blob/master/_config.yml

+1

素晴らしい!そのオプションを設定した場合、 '/ patterns'はまだコンパイルされ、'/_site'に表示されますか? –

+0

'/ patterns'の中にindex.htmlを置くと、私はそう信じています! – Paul

+0

Hmmm、私の '_config.yml'にあなたの推薦を追加するときに得られるものです:' Liquid例外:インクルードファイル '_includes/patterns/file-name.html' not found'。 明確にするために、私は '{%include /patterns/file-name.html%}'のようなファイルをインクルードしようとしています。 –

1

私はcollectionsは何が必要でしょうと思います。それらをパブリックHTMLとして含めることができます。

ここにはこれだけのexample projectがあります。

+0

ありがとう!私は間違っているかもしれませんが、ディレクトリの先頭に '_'を付けると、Jekyllはコンパイル時に' _site'にそのディレクトリを含めないことを意味します。私の使用例では、 '/ _site'に'/patterns'を含める必要があります。なぜなら私はiframe内のファイルを参照しているからです。 –

+1

一般にアンダースコアについては真ですが、コレクションには一般にアクセス可能なhtmlも書き出す特別なオプションがあります。サンプルプロジェクトをダウンロードし、 'jekyll build'を実行してその動作を確認することをお勧めします。 –

+1

また、index.htmlファイルを開くと、それを液体とiframeの両方に含める方法がわかります。 –

3

includeタグで使用されるディレクトリを_config.ymlincludes_dirと変更することができます。複数のパスを設定することはできません(ソース:https://jekyllrb.com/docs/configuration/)。

いずれにしても、_includesのファイルは出力されません。パターン固有のインクルードを_includes/patterns/に分けることができますが、ライブサイトに影響するのは、それらのファイルが含まれていた場所だけです。

0

は、../の相対(1つまたは複数のディレクトリ上位)パスを指定するようには見えないため、私が望むところにある_includesディレクトリの代わりにシンボリックリンクを付けました。

関連する問題

 関連する問題