• SIS Lab
  • >
  • Blog
  • >
  • Lokkaプラグインlokka-twitter_urlを作ってみた

Lokkaプラグインlokka-twitter_urlを作ってみた

更新日:2019.04.20 作成日:2012.01.30

大したものじゃないけど、Lokkaプラグイン作ってみた。

[twitter:meganii]

って、やると、 http://twitter.com/meganii へのリンクに置換するよ。

以下、参考にさせてもらいましたー!!

lokka-twitter_url.rb

module Lokka
  module TwitterUrl
    def self.registered(app)
      %w(posts posts/* pages pages/*).each do |suburl|
        app.before("/admin/#{suburl}") do
          if @request.env['REQUEST_METHOD'] =~ /POST|PUT/ && 
             (body = (params[:post] && params[:post][:body]))
            body.force_encoding("utf-8").gsub!(/\[twitter:(.*?)\]/u){ TwitterUrl::Util.link($1) }
          end
        end
      end
    end

    module Util
      def self.link(id)
        "<a href=\"http://twitter.com/#{id}\" target=\"_blank\">@#{id}</a>"
      end
    end
  end
end

gsub!

gsub!メソッドは、パターンにマッチした部分をすべて指定の文字列に置換します。レシーバ自身を変更するメソッドです。戻り値は、置換が行われたときはレシーバ自身、変更がなかったときはnilです。 gsub, gsub! (String) - Rubyリファレンス

参考

たのしいRuby 第5版
たのしいRuby 第5版
出版社:SBクリエイティブ
著者:高橋 征義後藤 裕蔵まつもと ゆきひろ
発売日: 2016/02/26

Related contents