2012-06-10 34 views
6

Đối với các bài đăng khác nhau (được tạo thông qua rake new_post[my_post]), tôi muốn thêm chức năng javascript chỉ được đưa vào bài đăng đó và không có nơi nào khác trên blog.Thêm thư viện javascript vào bài đăng Octopress?

Tôi có thể thực hiện việc này bằng cách chỉnh sửa thủ công tệp public/my_post/index.html nhưng sau đó mỗi lần tôi thực hiện rake generate, tôi sẽ phải thực hiện lại thao tác này.

Có cách nào được xây dựng để thực hiện điều này trong Octopress không?

Cheers

Trả lời

10

Trong 2.1 bạn sẽ có thể tiêm mỗi trang/bài JavaScript hoặc tài sản CSS vào tiêu đề bằng cách thiết lập một số vars trong vấn đề yaml trước.

Hiện tại, bạn có thể chỉ cần chèn một liên kết hoặc thẻ tập lệnh vào bên trong bài đăng hoặc trang và nó sẽ được tải tại chỗ. Ví dụ:

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

Giả sử bạn cần this.jsthat.js trong một bài đăng lưu chúng dưới mới được tạo ra /javascripts/custom/ thư mục.

hơn trong cách bố trí mặc định của bạn thêm, bên trong thẻ <head>, một cái gì đó như:

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

Cuối cùng, bạn có thể tiêm mỗi bài javascript đơn giản là thêm vào bài YAML phía trước quan trọng lĩnh vực custom_javascript:

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

Tất nhiên bạn có thể sử dụng cách tiếp cận tương tự cho những thứ khác mà bạn cần phải tiêm vào <head>.

Các vấn đề liên quan