diff --git a/_build/config.json b/_build/config.json
index ad4ec28..af6a49d 100644
--- a/_build/config.json
+++ b/_build/config.json
@@ -56,6 +56,11 @@
"value": "google",
"area": "general"
},{
+ "key": "use_keywords",
+ "type": "combo-boolean",
+ "value": "1",
+ "area": "general"
+ }, {
"key": "user_name",
"type": "textfield",
"area": "general",
diff --git a/assets/components/seopro/js/mgr/seopro.js b/assets/components/seopro/js/mgr/seopro.js
index de7faf7..70f57e1 100644
--- a/assets/components/seopro/js/mgr/seopro.js
+++ b/assets/components/seopro/js/mgr/seopro.js
@@ -10,7 +10,11 @@ Ext.extend(seoPro, Ext.Component, {
seoPro.config.siteNameShow = !MODx.isEmpty(MODx.config['seopro.usesitename']);
seoPro.config.searchEngine = MODx.isEmpty(MODx.config['seopro.searchengine']) ? 'google' : MODx.config['seopro.searchengine'];
seoPro.config.titleFormat = MODx.isEmpty(MODx.config['seopro.title_format']) ? '' : MODx.config['seopro.title_format'];
- seoPro.addKeywords();
+
+ if (parseInt(MODx.config['seopro.use_keywords']) === 1) {
+ seoPro.addKeywords();
+ }
+
seoPro.addPanel();
Ext.each(seoPro.config.fields.split(','), function(field) {
@@ -47,12 +51,17 @@ Ext.extend(seoPro, Ext.Component, {
seoPro.changePrevBox(field);
});
+ var counterHtml = '';
+ if (parseInt(MODx.config['seopro.use_keywords']) === 1) {
+ counterHtml += '' + _('seopro.keywords') + ': 0';
+ }
+ counterHtml += '' + _('seopro.characters') + ': 1/' + seoPro.config.chars[field] + '';
+
Ext.get('x-form-el-modx-resource-' + field).createChild({
tag: 'div',
id: 'seopro-resource-' + field,
class: 'seopro-counter',
- html: '' + _('seopro.keywords') + ': 0\
- ' + _('seopro.characters') + ': 1/' + seoPro.config.chars[field] + ''
+ html: counterHtml
});
seoPro.count(field);
}
@@ -147,33 +156,37 @@ Ext.extend(seoPro, Ext.Component, {
charCount = charCount + extra.length;
}
}
- var keywordCount = 0;
- Ext.each(Ext.get('seopro-keywords').getValue().split(','), function(keyword) {
- keyword = keyword.replace(/^\s+/, '').toLowerCase();
- if (keyword) {
- var counter = Value.toLowerCase().match(new RegExp("(^|[ \s\n\r\t\.,'\(\"\+;!?:\-])" + keyword + "($|[ \s\n\r\t.,'\)\"\+!?:;\-])", 'gim'));
- // var counter = Value.toLowerCase().match(new RegExp('\\b' + keyword + '\\b', 'g'));
- if (counter) {
- keywordCount = keywordCount + counter.length;
+ if (parseInt(MODx.config['seopro.use_keywords']) === 1) {
+ var keywordCount = 0;
+ Ext.each(Ext.get('seopro-keywords').getValue().split(','), function (keyword) {
+ keyword = keyword.replace(/^\s+/, '').toLowerCase();
+
+ if (keyword) {
+ var counter = Value.toLowerCase().match(new RegExp("(^|[ \s\n\r\t\.,'\(\"\+;!?:\-])" + keyword + "($|[ \s\n\r\t.,'\)\"\+!?:;\-])", 'gim'));
+ // var counter = Value.toLowerCase().match(new RegExp('\\b' + keyword + '\\b', 'g'));
+ if (counter) {
+ keywordCount = keywordCount + counter.length;
+ }
}
- }
- });
- Ext.get('seopro-counter-chars-' + field + '-current').dom.innerHTML = charCount;
- Ext.get('seopro-counter-keywords-' + field + '-current').dom.innerHTML = keywordCount;
+ });
- var maxKeywords = MODx.isEmpty(MODx.config['seopro.max_keywords_title']) ? '4' : MODx.config['seopro.max_keywords_title'];
- if (field === 'description') {
- // use different limit for the description
- maxKeywords = MODx.isEmpty(MODx.config['seopro.max_keywords_description']) ? '8' : MODx.config['seopro.max_keywords_description'];
- }
- maxKeywords = parseInt(maxKeywords);
+ Ext.get('seopro-counter-keywords-' + field + '-current').dom.innerHTML = keywordCount;
- if (keywordCount > 0 && keywordCount <= maxKeywords) {
- Ext.get('seopro-counter-keywords-' + field).removeClass('red').addClass('green');
- } else {
- Ext.get('seopro-counter-keywords-' + field).removeClass('green').addClass('red');
+ var maxKeywords = MODx.isEmpty(MODx.config['seopro.max_keywords_title']) ? '4' : MODx.config['seopro.max_keywords_title'];
+ if (field === 'description') {
+ // use different limit for the description
+ maxKeywords = MODx.isEmpty(MODx.config['seopro.max_keywords_description']) ? '8' : MODx.config['seopro.max_keywords_description'];
+ }
+ maxKeywords = parseInt(maxKeywords);
+
+ if (keywordCount > 0 && keywordCount <= maxKeywords) {
+ Ext.get('seopro-counter-keywords-' + field).removeClass('red').addClass('green');
+ } else {
+ Ext.get('seopro-counter-keywords-' + field).removeClass('green').addClass('red');
+ }
}
+ Ext.get('seopro-counter-chars-' + field + '-current').dom.innerHTML = charCount;
if (charCount > maxchars || charCount === 0) {
Ext.get('seopro-counter-chars-' + field).removeClass('green').addClass('red');
diff --git a/core/components/seopro/elements/plugins/seopro.plugin.php b/core/components/seopro/elements/plugins/seopro.plugin.php
index c9e79ea..b758b9b 100644
--- a/core/components/seopro/elements/plugins/seopro.plugin.php
+++ b/core/components/seopro/elements/plugins/seopro.plugin.php
@@ -160,11 +160,16 @@
if (in_array($template, $disabledTemplates)) {
break;
}
- $seoKeywords = $modx->getObject('seoKeywords', array('resource' => $modx->resource->get('id')));
- if ($seoKeywords) {
- $keyWords = $seoKeywords->get('keywords');
- $modx->setPlaceholder('seoPro.keywords', $keyWords);
+
+ $useKeywords = (bool) $modx->getOption('seopro.use_keywords', null, true);
+ if ($useKeywords) {
+ $seoKeywords = $modx->getObject('seoKeywords', array('resource' => $modx->resource->get('id')));
+ if ($seoKeywords) {
+ $keyWords = $seoKeywords->get('keywords');
+ $modx->setPlaceholder('seoPro.keywords', $keyWords);
+ }
}
+
// Render the meta title, based on system settings
$titleFormat = $modx->getOption('seopro.title_format');
if (empty($titleFormat)) {
diff --git a/core/components/seopro/lexicon/de/default.inc.php b/core/components/seopro/lexicon/de/default.inc.php
index c774363..bca539a 100644
--- a/core/components/seopro/lexicon/de/default.inc.php
+++ b/core/components/seopro/lexicon/de/default.inc.php
@@ -32,4 +32,6 @@
$_lang['setting_seopro.searchengine_desc'] ='Mögliche Werte: google, yandex.';
$_lang['setting_seopro.title_format'] ='Format used for the meta title.';
$_lang['setting_seopro.title_format_desc'] ='Here you can specify the format used for the meta title used
- in Google/Yandex preview. The rendered output is also available on frontend with [[+seoPro.title]].';
\ No newline at end of file
+ in Google/Yandex preview. The rendered output is also available on frontend with [[+seoPro.title]].';
+$_lang['setting_seopro.use_keywords'] ='Use keywords';
+$_lang['setting_seopro.use_keywords_desc'] ='Enable/disable the keywords field and keywords counters.';
diff --git a/core/components/seopro/lexicon/en/default.inc.php b/core/components/seopro/lexicon/en/default.inc.php
index bbe2227..ec9367d 100644
--- a/core/components/seopro/lexicon/en/default.inc.php
+++ b/core/components/seopro/lexicon/en/default.inc.php
@@ -33,3 +33,5 @@
$_lang['setting_seopro.title_format'] ='Format used for the meta title.';
$_lang['setting_seopro.title_format_desc'] ='Here you can specify the format for the meta title used
in Google/Yandex preview. The rendered output is also available on frontend with [[+seoPro.title]].';
+$_lang['setting_seopro.use_keywords'] ='Use keywords';
+$_lang['setting_seopro.use_keywords_desc'] ='Enable/disable the keywords field and keywords counters.';
diff --git a/core/components/seopro/lexicon/fr/default.inc.php b/core/components/seopro/lexicon/fr/default.inc.php
index 6cd24f5..58af79e 100644
--- a/core/components/seopro/lexicon/fr/default.inc.php
+++ b/core/components/seopro/lexicon/fr/default.inc.php
@@ -12,3 +12,5 @@
$_lang['setting_seopro.delimiter'] = 'Séparateur dans Google/Yandex preview.';
$_lang['setting_seopro.delimiter_desc'] = 'Séparateur de titre et de nom de site';
+$_lang['setting_seopro.use_keywords'] ='Use keywords';
+$_lang['setting_seopro.use_keywords_desc'] ='Enable/disable the keywords field and keywords counters.';
diff --git a/core/components/seopro/lexicon/it/default.inc.php b/core/components/seopro/lexicon/it/default.inc.php
index a125a03..b37c66a 100644
--- a/core/components/seopro/lexicon/it/default.inc.php
+++ b/core/components/seopro/lexicon/it/default.inc.php
@@ -10,3 +10,5 @@
$_lang['seopro.prevbox_yandex'] = 'Come verrà visualizzato in Yandex?';
$_lang['seopro.emptymetadescription']='Please enter a description';
$_lang['seopro.branding_text']='This site is optimized with the Sterc seoPro plugin - https://github.com/Sterc/SEOPro.';
+$_lang['setting_seopro.use_keywords'] ='Use keywords';
+$_lang['setting_seopro.use_keywords_desc'] ='Enable/disable the keywords field and keywords counters.';
diff --git a/core/components/seopro/lexicon/nl/default.inc.php b/core/components/seopro/lexicon/nl/default.inc.php
index 8cf9876..0e79aec 100644
--- a/core/components/seopro/lexicon/nl/default.inc.php
+++ b/core/components/seopro/lexicon/nl/default.inc.php
@@ -33,3 +33,5 @@
$_lang['setting_seopro.title_format'] ='Format used for the meta title.';
$_lang['setting_seopro.title_format_desc'] ='Here you can specify the format used for the meta title used
in Google/Yandex preview. The rendered output is also available on frontend with [[+seoPro.title]].';
+$_lang['setting_seopro.use_keywords'] ='Gebruik keywords';
+$_lang['setting_seopro.use_keywords_desc'] ='Zet het keywords veld inclusief de keyword counters aan/uit.';
diff --git a/core/components/seopro/lexicon/pl/default.inc.php b/core/components/seopro/lexicon/pl/default.inc.php
index 0d03385..7705b36 100644
--- a/core/components/seopro/lexicon/pl/default.inc.php
+++ b/core/components/seopro/lexicon/pl/default.inc.php
@@ -23,3 +23,5 @@
$_lang['setting_seopro.title_format'] ='Format used for the meta title.';
$_lang['setting_seopro.title_format_desc'] ='Here you can specify the format used for the meta title used
in Google/Yandex preview. The rendered output is also available on frontend with [[+seoPro.title]].';
+$_lang['setting_seopro.use_keywords'] ='Use keywords';
+$_lang['setting_seopro.use_keywords_desc'] ='Enable/disable the keywords field and keywords counters.';
diff --git a/core/components/seopro/lexicon/ru/default.inc.php b/core/components/seopro/lexicon/ru/default.inc.php
index f85cc5a..ed22aa0 100644
--- a/core/components/seopro/lexicon/ru/default.inc.php
+++ b/core/components/seopro/lexicon/ru/default.inc.php
@@ -15,3 +15,5 @@
$_lang['setting_seopro.title_format'] ='Format used for the meta title.';
$_lang['setting_seopro.title_format_desc'] ='Here you can specify the format used for the meta title used
in Google/Yandex preview. The rendered output is also available on frontend with [[+seoPro.title]].';
+$_lang['setting_seopro.use_keywords'] ='Use keywords';
+$_lang['setting_seopro.use_keywords_desc'] ='Enable/disable the keywords field and keywords counters.';