Menu

Category

Archive

logo


Jekyll にて記事の deprecate フラグを立てるプラグインを作成しました

2014-04-29 09:00:00 +0900
  • このエントリーをはてなブックマークに追加

最近、ブログを Jekyll で自分のブログを作成しています。それに伴ってプログラミングのライブラリに関する記事等、ある程度時間が立つとその記事の内容を保証できない類の記事を管理するプラグインを書いてみました。

使い方

使い方は本当に簡単です。各ポストの任意の箇所に下記のコードを埋め込みます。

{{ page.date | render_deprecate: 6 }}

このコードを例えば記事の一番上に埋め込んでおけば、6ヶ月後に "This article might be too old." と注意書きが表示されます。Jekyll は静的なエンジンなので、自分でビルドした際に指定した月数が経過していれば表示されると思います。

コード

簡単なコードです。

 1 module Jekyll
 2  module RenderDeprecate
 3  
 4      def render_deprecate(pageTime, numOfMonth)
 5     
 6      if pageTime == nil
 7          return
 8      end
 9   
10      currentMonths = (Time.now.year*12) + (Time.now.mon)
11      articleMonths = (pageTime.year*12) + (pageTime.mon)   
12      diffMonth     = currentMonths - articleMonths
13      
14      if diffMonth >= numOfMonth
15          "<span class=\"deprecate\">This article might be too old.</span>"
16      else
17          ""
18      end
19  
20      end
21    
22  end
23 end
24 Liquid::Template.register_filter(Jekyll::RenderDeprecate)