/** * https://github.com/tea3/hexo-related-popular-posts/wiki/More-Settings#customize-html */ 'use strict'; var util = require('hexo-util'); hexo.extend.helper.register('popular_posts_wrapper', function(args){ const title = args.title; const json = args.json.json; const cls = args.json.class; if (json == undefined || json.length == 0) { return ''; } const cfg = hexo.theme.config.article.related_posts; if (cfg.enable != true) return; var returnHTML = ""; var div = `
${title}
`; const posts = this.site.posts; const root = this.config.root; function listItem(obj){ var el = ''; el += ''; var p = posts.filter(function(p) { return root + p.path == obj.path; }); if (p && p.length > 0) { p = p.data[0]; } el += '' + obj.title + ''; if (obj.excerpt && obj.excerpt.length > 0) { el += '' + util.truncate(util.stripHTML(obj.excerpt), {length: 120}) + ''; } el += ''; return el; } if (json.length > 0) { for(var i = 0; i < json.length; i++) { returnHTML += listItem(json[i]); } } if (returnHTML != "") returnHTML = "
" + returnHTML + "
"; div += returnHTML; div += '
'; return div; });