2016-09-19 5 views
0

Jekyllの_dataフォルダ内のすべてのファイルをループする方法はありますか?ジキルの_dataフォルダ内のすべてのファイルをループする方法は?

現在、私はこのようなsidebarlist.ymlと呼ばれるファイル内のファイルのリストを持っている:私はこのコードを使用して、これらのファイルのすべてをループするために

- file1 
- file2 
- file3 

{% for sidebar in site.data.sidebarlist %} 
{% for entry in site.data.sidebars[sidebar].entries %} 
... 
{% endfor %} 
{% endfor %} 

sidebarlist.ymlの使用を避け、自動的に_data内のすべてのファイルを繰り返し処理したいと思います。これはできますか?

答えて

1

documentationによると、jekyllはsite.dataにYAMLリソース(.yml、.yaml、.json、および.csvファイル)を直接ロードします。あなたのファイルは、これらの形式のいずれかを使用する場合は、行うことができます:

{% for data in site.data %} 
    ... 
{% endfor %} 
+0

感謝をdata_source: dataとのアクセスを追加することにより、_config.ymldata_dataを変更、これはデータファイルをロードしている間、それは私が達成しようとしている何のためにかなりのない作業を行います。たぶん私のユースケースは、各ファイル内の特定のyamlレベルに入ることを試みているので、もっと複雑です。 –

+0

私はあなたが達成しようとしていることを理解していなかったので、私は答えを詳述しませんでした。正確な使用例を自由に感じてください:) – wasthishelpful

0

あなたの質問のタイトルとあなたの最後の質問を読んで私がお答えします:

をあなたは_dataフォルダに保つファイルをループすることはできません。 Jekyll Variable docとジキルディレクトリ構造によれば、デフォルトでサポートされる拡張子.yml .yaml .csv .json_data内のすべてのファイルが答えだ@ wasthishelpfullようsite.dataにロードされ、あなたはthis answer

のようなものの{{site.data.*filename.data*}}とループを介してアクセスする場合、ファイルをごたいループフォルダ(no underscore)を静的ファイルとして提供し、ファイル内のデータにjquery.get()を使用します。

またはURLエンドポイントで/datasee this post for more

関連する問題