From 34d758cbf4d76c4bd9282284391e2cc981c7f3f5 Mon Sep 17 00:00:00 2001 From: StevenJoeZhang <1119186082@qq.com> Date: Thu, 1 Aug 2019 13:23:43 +0800 Subject: [PATCH 1/2] Fix --- scripts/filters/exturl.js | 14 ++++++++------ scripts/filters/lazyload.js | 7 +++---- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/scripts/filters/exturl.js b/scripts/filters/exturl.js index 451598792d..656605abe1 100644 --- a/scripts/filters/exturl.js +++ b/scripts/filters/exturl.js @@ -14,12 +14,14 @@ hexo.extend.filter.register('after_post_render', data => { if (!cheerio) cheerio = require('cheerio'); const $ = cheerio.load(data.content, {decodeEntities: false}); + const links = $('a'); + if (!links.length) return data; - var config = this.config; + var config = hexo.config; var siteHost = url.parse(config.url).hostname || config.url; - $('a').each(() => { - var href = $(this).attr('href'); + links.each((i, o) => { + var href = $(o).attr('href'); // Exit if the href attribute doesn't exists. if (!href) return; @@ -32,12 +34,12 @@ hexo.extend.filter.register('after_post_render', data => { if (data.hostname === siteHost) return; // If title atribute filled, set it as title; if not, set url as title. - var title = $(this).attr('title') || href; + var title = $(o).attr('title') || href; var encoded = Buffer.from(href).toString('base64'); - $(this).replaceWith(() => { - return $(`${$(this).html()}`); + $(o).replaceWith(() => { + return $(`${$(o).html()}`); }); }); diff --git a/scripts/filters/lazyload.js b/scripts/filters/lazyload.js index 5e7ab56d03..32811f953d 100644 --- a/scripts/filters/lazyload.js +++ b/scripts/filters/lazyload.js @@ -12,13 +12,12 @@ hexo.extend.filter.register('after_post_render', data => { if (!cheerio) cheerio = require('cheerio'); const $ = cheerio.load(data.content, {decodeEntities: false}); - const images = $('img'); if (!images.length) return data; - Array.from(images).forEach(img => { - let src = $(img).attr('src'); - $(img).attr('data-src', src).removeAttr('src'); + images.each((i, o) => { + let src = $(o).attr('src'); + $(o).attr('data-src', src).removeAttr('src'); }); data.content = $.html(); From 99d2fc703503ded72ecfa52b80092754ea9aa637 Mon Sep 17 00:00:00 2001 From: StevenJoeZhang <1119186082@qq.com> Date: Thu, 1 Aug 2019 13:31:57 +0800 Subject: [PATCH 2/2] Fix --- scripts/hexo-event.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/hexo-event.js b/scripts/hexo-event.js index a57ee687fe..84827d844e 100644 --- a/scripts/hexo-event.js +++ b/scripts/hexo-event.js @@ -26,8 +26,8 @@ hexo.on('generateBefore', () => { // Custom languages support. Introduced in NexT v6.3.0. if (data && data.languages) { - var lang = this.config.language; - var i18n = this.theme.i18n; + var lang = hexo.config.language; + var i18n = hexo.theme.i18n; var mergeLang = lang => { i18n.set(lang, merge(i18n.get([lang]), data.languages[lang]));