2012-06-10 7 views
6

Dla różnych postów (generowanych przez rake new_post[my_post]), chcę dodać funkcję javascript, która ma być zawarta tylko w tym poście i nigdzie indziej na blogu.Dodaj bibliotekę javascript do postów Octopress?

Mogę to zrobić ręcznie edytując plik public/my_post/index.html, ale za każdym razem, gdy wykonuję numer rake generate, będę musiał zrobić to ponownie.

Czy jest wbudowany sposób, aby tak się stało w Octopress?

Cheers

Odpowiedz

10

w 2.1 będzie można wstrzyknąć na stronę/post JavaScript lub aktywów CSS w nagłówku poprzez ustawienie kilku vars w sprawie yaml przednim.

Obecnie można po prostu wstawić znacznik odnośnika lub skryptu wewnątrz wpisu lub samej strony, a zostanie on załadowany. Przykład:

<script type="text/javascript" src="/path/to/file.js"></script> 
<link rel="stylesheet" type="text/css" href="/path/to/file.css"> 
0

Przypuśćmy potrzebne this.js i that.js w poście zapisać je w nowo utworzonym /javascripts/custom/ katalogu.

niż domyślny układ dodać, wewnątrz znacznika <head>, coś jak:

{% if page.custom_javascript %} 
    {% for js in page.custom_javascript %} 
     <script type="text/javascript" src="/javascripts/custom/{{ js }}"></script>  
    {% endfor%} 
{% endif %} 

Wreszcie można wstrzykiwać per-postu javascript prostu dodając do YAML postu front-materii pole custom_javascript:

--- 
layout: post 
title: "Insert javascript inside head with Octopress" 
custom_javascript: [this.js, that.js] 
--- 

Oczywiście można zastosować podobne podejście w przypadku innych rzeczy, które należy wprowadzić do <head>.

Powiązane problemy