/** * Butterfly * Related Posts * According the tag */ 'use strict' hexo.extend.helper.register('related_posts', function (currentPost, allPosts) { var relatedPosts = [] currentPost.tags.forEach(function (tag) { allPosts.forEach(function (post) { if (isTagRelated(tag.name, post.tags)) { var relatedPost = { title: post.title, path: post.path, cover: post.cover, randomcover: post.randomcover, weight: 1, updated: post.updated, created: post.date } var index = findItem(relatedPosts, 'path', post.path) if (index !== -1) { relatedPosts[index].weight += 1 } else { if (currentPost.path !== post.path) { relatedPosts.push(relatedPost) } } } }) }) if (relatedPosts.length === 0) { return '' } var result = '' const hexoConfig = hexo.theme.config.rootConfig const config = hexo.theme.config var limitNum = config.related_post.limit || 6 var dateType = config.related_post.date_type || 'created' var headlineLang = this._p('post.recommend') var lazySrc = config.lazyload.enable ? 'data-src' : 'src' var lazyClass = config.lazyload.enable ? 'lazyload' : '' relatedPosts = relatedPosts.sort(compare('weight')) if (relatedPosts.length > 0) { result += '