diff --git a/addons/website/static/src/components/dialog/seo.js b/addons/website/static/src/components/dialog/seo.js index b172ed39103..c6cf1f64767 100644 --- a/addons/website/static/src/components/dialog/seo.js +++ b/addons/website/static/src/components/dialog/seo.js @@ -228,6 +228,7 @@ class MetaKeywords extends Component { } addKeyword(keyword) { + keyword = keyword.trim(); if (keyword && !this.isFull && !this.seoContext.keywords.includes(keyword)) { this.seoContext.keywords.push(keyword); this.state.keyword = ''; @@ -433,8 +434,10 @@ export class OptimizeSEODialog extends Component { } const el = this.pageDocumentElement.querySelector(query); if (name === 'keywords') { - const parsed = el && el.content.split(','); - return parsed && parsed[0] ? parsed : []; + // Keywords might contain spaces which makes them fail the content + // check. Trim the strings to prevent this from happening. + const parsed = el && el.content.split(',').map(kw => kw.trim()); + return parsed && parsed[0] ? [...new Set(parsed)] : []; } return el && el.content; }