Rails アプリは RDiscount を使用して、ユーザーが指定したマークダウン テキストから HTML を生成していますが、アンカー タグに rel="nofollow" がないことに気付きました。私のアプリは公開されているので、これは私にとって大きな問題です。nofollow リンクを有効にする方法はありますか、またはより良い解決策はありますか?
ありがとう!
Rails アプリは RDiscount を使用して、ユーザーが指定したマークダウン テキストから HTML を生成していますが、アンカー タグに rel="nofollow" がないことに気付きました。私のアプリは公開されているので、これは私にとって大きな問題です。nofollow リンクを有効にする方法はありますか、またはより良い解決策はありますか?
ありがとう!
これは、拡張構文を備えた Ruby Markdown パーサーであるKramdownでのみ可能であると思います。リンクに示すように、次のようにします。
[link](test.html){:rel='nofollow'}
それまでの間、RDiscount 出力を再解析し、各アンカーに rel="nofollow" を追加することで、このハックを使用しています。
def markdown(input)
html = RDiscount.new(input).to_html
doc = Nokogiri::HTML::DocumentFragment.parse(html)
doc.css("a").each do |link|
link['rel'] = 'nofollow'
end
doc.to_html
end
これは実際にはマークダウンパーサーで処理する必要があると思いますが。
この方法でのリンクの変更をサポートするために、RDiscount でオープン機能のリクエストがあります。
今後の RDiscount 2.1.5.x リリースのいずれかで予定されています。