Skip to content

Commit de35315

Browse files
committedJun 10, 2018
fix: duplicate description meta (close: #565)
- When user set description via front-matter's meta, description generated will be duplicate which is not friendly to SEO.
1 parent 7cd7c64 commit de35315

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed
 

‎lib/app/dataMixin.js

+5
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,11 @@ export default function dataMixin (siteData) {
4949
: selfTitle || 'VuePress'
5050
},
5151
$description () {
52+
// #565 hoist description from meta
53+
if (this.$page.frontmatter.meta) {
54+
const descriptionMeta = this.$page.frontmatter.meta.filter(item => item.name === 'description')[0]
55+
if (descriptionMeta) return descriptionMeta.content
56+
}
5257
return this.$page.frontmatter.description || this.$localeConfig.description || this.$site.description || ''
5358
},
5459
$lang () {

‎lib/build.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,10 @@ module.exports = async function build (sourceDir, cliOptions = {}) {
138138
readline.cursorTo(process.stdout, 0)
139139
process.stdout.write(`Rendering page: ${pagePath}`)
140140

141-
const pageMeta = renderPageMeta(page.frontmatter && page.frontmatter.meta)
141+
// #565 avoid duplicate description
142+
const meta = (page.frontmatter && page.frontmatter.meta || []).filter(item => item.name !== 'description')
143+
const pageMeta = renderPageMeta(meta)
144+
142145
const context = {
143146
url: pagePath,
144147
userHeadTags,

0 commit comments

Comments
 (0)
Please sign in to comment.