diff --git a/sitegin/nunjucks.js b/sitegin/nunjucks.js index bd929548ce9edfb7aad69954b1089063e8118095..3e4cde87a6bce0d84df8d25af830293b70594687 100644 --- a/sitegin/nunjucks.js +++ b/sitegin/nunjucks.js @@ -7,6 +7,7 @@ var nunjucks = require('nunjucks'); var fs = require('fs'); var dateFilter = require('nunjucks-date-filter'); var util = require('util'); +var url = require('url') var config = require('./config'); console.log('watch: '+config.watch); @@ -50,6 +51,10 @@ env.addFilter('relURL', function(filename, dir){ return dir+'/'+filename; }) +env.addFilter('absURL', function(rel, base){ + return url.resolve(base, rel) +}) + var formats = {}; module.exports = function(data, type, config) { diff --git a/theme/templates/article.html.nunj b/theme/templates/article.html.nunj index 6e23a9a176365e5886540989b9b5ab4a45fa0f1a..37c928db8f02bc9fef1c1ed526cbb94a696e4ab5 100644 --- a/theme/templates/article.html.nunj +++ b/theme/templates/article.html.nunj @@ -4,7 +4,7 @@ <meta property="og:type" content="article" /> <meta property="article:published_time" content="{{ metadata.date.creation }}" /> - <meta property="og:image" content="{{ metadata.image }}" /> + {% if metadata.image %} <meta property="og:image" content="{{ metadata.image | absURL( canonicalURL ) }}" /> {% endif %} <meta property="og:description" content="{% if metadata.perex %}{{metadata.perex}}{% else %}{% if metadata.perex_e %}{{metadata.perex_e | truncate}}{% else %}{% if content %}{{ content | striptags | truncate }}{% endif %}{% endif %}{% endif %}" /> {{ super() }}