github - 階層 - markdown web ページ




サイトインデックスのJekyllマークダウンページをレンダリングする方法 (2)

ここではいくつかのことが起こっています。

  1. あなたの_layouts/default.htmlファイル(およびそれに関する他の_layoutsディレクトリファイル)では、

    {{ page.content }}
    

    あなたは以下を使用する必要があります:

    {{ content }}
    
  2. Jekyllは、サイトのルートレベルの_includesディレクトリからのファイルのみを含めることができます。 そのため、 content.mdをルートからそのディレクトリに移動する必要があります(存在しない場合は作成します)。

  3. 最後に、実際にindex.htmlファイルからインクルードファイルを呼び出す必要があります。 これを行うには、index.htmlファイルの内容を次のように変更します。

    ---
    layout: default
    ---
    
    {% include content.md %}
    

それはあなたが探している行動をセットアップします。

私は2つの他のことを指摘したいと思います:

  1. インデックスファイルの拡張子を.htmlから.md変更すると、より効果的です。 ただし重要なメモ:ページネーションが必要な場合は、 .htmlを使用する必要があります。 Jekyll Paginationのドキュメントでは 、この機能はファイルの名前がindex.html場合にのみ機能します。

  2. あなたのインデックスファイル内でやっていることが、そのページにしか存在しないインクルードを呼び出すのであれば、単にインデックスファイルに直接コンテンツを置くこともできます。

おそらくシンプルなものがありませんが、私はJekyllをローカルでテストする方法がありません。

私はGitHubページを使ってJekyllをレンダリングしています。最初のマークダウンページからメインのindex.htmlにマークダウンコンテンツをレンダリングしたいだけです。

構造は次のとおりです。

Index.html

---
layout: default
---

_レイアウト
- default.html

//html stuff..
<section>

{{page.content}}

</section>

ルートフォルダには、 {{page.content}}用にレンダリングしたい{{page.content}}というページがありますが、レイアウトはレンダリングされますが、液体タグセクションは空白です。

content.mdどのようにレンダリングするのですか?

例: https : //github.com/wycks/wordpress-gears-jekyll


include _includes/直下にファイルをインクルードできるようにします。 include_relativeもあり、パスを使用して他の場所からインクルードすることができます。 インクルードは与えられたファイルに相対的でなければなりません:

{% include_relative somedir/footer.html %}

解決できない方法をインクルードする方法には1つの問題があります。インクルードするファイルに先頭の問題がある場合、Jekyllはそれを取り除きません。 だから、あなたは特定のメタデータを格納するためにフロント・マターを使用することはできません。 もちろん、変数を使用することもできますが、それは等価ではありません。あなたのコレクションをコレクションの一部にするか、独立にレンダリングしたい場合は、フロントマターを持つ必要があるからです。





jekyll