我爲Jeklly寫了一個簡單的插件,它基本上採用了我在_config.yml
中定義的site.owner.email
並對其進行了模糊處理,然後將其放在我的About頁面上。我有以下代碼:Jeklly的標記插件
_plugins/obfuscate_email.rb
class ObfuscateEmail < Liquid::Tag
def initialize(tag_name, text, tokens)
@text = text
super
end
def render(context)
output_array = []
char_array = @text.split('')
char_array.each do |char|
output = "[dot]" if char == '.'
output = "[at]" if char == '@'
output = "[plus]" if char == '+'
if output
output_array << output
else
output_array << char
end
end
output_array.join
end
Liquid::Template.register_tag "obfuscate_email", self
end
用它,在這種情況下: {% obfuscate_email site.owner.email %}
會給結果是這樣的:site[dot]owner[dot]email
,但我期待這樣的事情返回owner[dot]something[at]gmail[dot]com
我該怎麼稱呼它?
感謝
@Slartibartfast編輯我上面的帖子,希望這是問題明確 – xbeta