これは私が必要としていたものでした。基本的に、イベントを使用してファイルが書き込まれる直前にレンダリングされたコンテンツを取得writeBefore
し、コレクション内のモデルから取得されるメタ タグとその一意の値を追加する非常に単純な文字列置換を実行します。
writeBefore: (opts) ->
docPad = @docPad
templateData = docpad.getTemplateData()
siteUrl = templateData.site.url
for model in opts.collection.models
if model.get('outExtension') == 'html'
url = @getTag('og:url', siteUrl+model.get('url'))
title = @getTag('og:title', model.get('title'))
content = model.get('contentRendered')
if content
content = content.replace(/<\/title>/, '</title>'+url+title+description)
model.set('contentRendered', content)
# Helper
getTag: (ogName, data) ->
return "\n <meta property=\"#{ogName}\" content=\"#{data}\" />"