そのため、Octopressでは、サイトでさまざまな方法で簡単に表示できるパーシャルでいっぱいのフォルダーが必要です。すべてのパーシャルが含まれているドキュメント内にリンクするパーシャルのタイトルのリストが必要です。
これは私が使用したいロジックですが、Octopressで実際に実装する方法がわかりません。
class Collection
attr_accessor :directory, :files
def new(dir)
self.files = []
self.directory = dir
load_files
end
def list(options={})
# Handle options here
files
end
private
def load_files
files_in(@directory).each do |file| # Psuedo-code
f = Jekyll::FileObject.new(file.read) # Also fictional, but I imagine something similar exists
f.text # Would return the actual content
f.yaml # Would return a hash of options from the YAML front matter
files << f
end
end
end
次に、パーシャルのコレクションをロードします。
api_methods = Collection.new("api_methods").list(:alphabetical => true, :method_type => "public")
液体の場合、目次を一覧表示します。
<ul>
{% for partial in api_methods %}
<li><a href="{% partial.yaml.url %}">{% partial.yaml.name %}</a></li>
{% endfor %}
</ul>
液体の場合、全文を一覧表示します。
{% for partial in api_methods %}
<h2>{% partial.yaml.name %}</h2>
{% partial.text %}
{% endfor %}
これで、私がやろうとしていることの基本的な全体像がわかるはずですが、実際にこれを実装する方法については途方に暮れています。