From afecbd51e435350eb27764d009f8d84998c6621d Mon Sep 17 00:00:00 2001 From: Agnieszka Szuba Date: Tue, 16 May 2023 14:00:11 +0200 Subject: [PATCH] remove html blocks inside more researches --- .../languageProcessing/researches/getKeywordDensity.js | 5 ++++- .../scoring/assessments/seo/KeywordDensityAssessment.js | 9 +++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/yoastseo/src/languageProcessing/researches/getKeywordDensity.js b/packages/yoastseo/src/languageProcessing/researches/getKeywordDensity.js index 59a9e0592ad..25cc513707a 100644 --- a/packages/yoastseo/src/languageProcessing/researches/getKeywordDensity.js +++ b/packages/yoastseo/src/languageProcessing/researches/getKeywordDensity.js @@ -1,6 +1,7 @@ /** @module analyses/getKeywordDensity */ import countWords from "../helpers/word/countWords.js"; +import removeHtmlBlocks from "../helpers/html/htmlParser"; /** * Calculates the keyword density. @@ -12,7 +13,9 @@ import countWords from "../helpers/word/countWords.js"; */ export default function( paper, researcher ) { const getWordsCustomHelper = researcher.getHelper( "getWordsCustomHelper" ); - let wordCount = countWords( paper.getText() ); + let text = paper.getText(); + text = removeHtmlBlocks( text ); + let wordCount = countWords( text ); // If there is a custom getWords helper use its output for countWords. if ( getWordsCustomHelper ) { diff --git a/packages/yoastseo/src/scoring/assessments/seo/KeywordDensityAssessment.js b/packages/yoastseo/src/scoring/assessments/seo/KeywordDensityAssessment.js index b705dd8870f..7ef8abb2096 100644 --- a/packages/yoastseo/src/scoring/assessments/seo/KeywordDensityAssessment.js +++ b/packages/yoastseo/src/scoring/assessments/seo/KeywordDensityAssessment.js @@ -7,6 +7,7 @@ import AssessmentResult from "../../../values/AssessmentResult"; import { inRangeEndInclusive, inRangeStartEndInclusive, inRangeStartInclusive } from "../../helpers/assessments/inRange"; import { createAnchorOpeningTag } from "../../../helpers/shortlinker"; import keyphraseLengthFactor from "../../helpers/assessments/keyphraseLengthFactor.js"; +import removeHtmlBlocks from "../../../languageProcessing/helpers/html/htmlParser"; /** * Represents the assessment that will look if the keyphrase density is within the recommended range. @@ -110,7 +111,9 @@ class KeywordDensityAssessment extends Assessment { this._hasMorphologicalForms = researcher.getData( "morphology" ) !== false; - this.setBoundaries( paper.getText(), keyphraseLength, customGetWords ); + let text = paper.getText(); + text = removeHtmlBlocks( text ); + this.setBoundaries( text, keyphraseLength, customGetWords ); this._keywordDensity = this._keywordDensity * keyphraseLengthFactor( keyphraseLength ); const calculatedScore = this.calculateResult(); @@ -328,7 +331,9 @@ class KeywordDensityAssessment extends Assessment { if ( customApplicabilityConfig ) { this._config.applicableIfTextLongerThan = customApplicabilityConfig; } - const textLength = customCountLength ? customCountLength( paper.getText() ) : researcher.getResearch( "wordCountInText" ).count; + let text = paper.getText(); + text = removeHtmlBlocks( text ); + const textLength = customCountLength ? customCountLength( text ) : researcher.getResearch( "wordCountInText" ).count; return paper.hasText() && paper.hasKeyword() && textLength >= this._config.applicableIfTextLongerThan; }