さまざまな投稿 (を介して生成rake new_post[my_post]
) について、その投稿にのみ含まれ、ブログの他の場所には含まれない JavaScript 関数を追加したいと考えています。
ファイルを手動で編集することでこれを行うことができpublic/my_post/index.html
ますが、 を行うたびにrake generate
、これを再度行う必要があります。
Octopress でこれを実現する組み込みの方法はありますか?
乾杯
2.1では、yamlフロントマターにいくつかの変数を設定することで、ページごと/投稿ごとのJavaScriptまたはCSSアセットをヘッダーに挿入できるようになります。
現在、投稿またはページ自体の中にリンクまたはスクリプトタグを挿入するだけで、その場所に読み込まれます。例:
<script type="text/javascript" src="/path/to/file.js"></script>
<link rel="stylesheet" type="text/css" href="/path/to/file.css">
必要this.js
であると仮定that.js
し、投稿でそれらを新しく作成された/javascripts/custom/
ディレクトリの下に保存します。
<head>
デフォルトのレイアウトよりも、タグ内に次のようなものを追加します。
{% if page.custom_javascript %}
{% for js in page.custom_javascript %}
<script type="text/javascript" src="/javascripts/custom/{{ js }}"></script>
{% endfor%}
{% endif %}
最後に、ポスト YAML フロントマターにフィールドを追加するだけで、ポストごとの JavaScript を挿入できますcustom_javascript
。
---
layout: post
title: "Insert javascript inside head with Octopress"
custom_javascript: [this.js, that.js]
---
もちろん、 に注入する必要がある他のものにも同様のアプローチを使用できます<head>
。