Skip to content

Commit

Permalink
Доработка
Browse files Browse the repository at this point in the history
  • Loading branch information
skeeks-semenov committed Feb 23, 2024
1 parent 421b879 commit ead3470
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 0 deletions.
21 changes: 21 additions & 0 deletions src/CmsSeoComponent.php
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,11 @@ class CmsSeoComponent extends Component implements BootstrapInterface
*/
public $is_sitemap_priority = false;

/**
* @var bool Разрешить индексацию контента для взрослых? По умолчанию не индексируется.
*/
public $is_allow_index_adult_content = false;

/**
* @var bool Делать картинки webp при ресайзе?
*/
Expand Down Expand Up @@ -254,6 +259,7 @@ public function rules()
[
'enableKeywordsGenerator',
'is_sitemap_priority',
'is_allow_index_adult_content',
'minKeywordLenth',
'maxKeywordsLength',
//'activeContentElem', 'activeTree'
Expand Down Expand Up @@ -292,6 +298,7 @@ public function attributeLabels()
{
return ArrayHelper::merge(parent::attributeLabels(), [
'is_sitemap_priority' => \Yii::t('skeeks/seo', 'Добавлять priority в sitemap?'),
'is_allow_index_adult_content' => \Yii::t('skeeks/seo', 'Разрешить индексацию контента для взрослых?'),
'enableKeywordsGenerator' => \Yii::t('skeeks/seo', 'Automatic generation of keywords'),
'minKeywordLenth' => \Yii::t('skeeks/seo', 'The minimum length of the keyword'),
'maxKeywordsLength' => \Yii::t('skeeks/seo', 'Length keywords'),
Expand Down Expand Up @@ -332,6 +339,7 @@ public function attributeLabels()
public function attributeHints()
{
return ArrayHelper::merge(parent::attributeHints(), [
'is_allow_index_adult_content' => "Если эта опция не выбрана то контента отмеченный как для взрослых, не попадет в карту сайта и будет запрещен к индексации!",
'header_content' => "Вставьте подвреждающие коды yandex webmaster и подобных систем. Этот код попадет между тегов head на странице.",
'countersContent' => \Yii::t('skeeks/seo',
'В это поле вы можете поставить любые коды счетчиков и сторонних систем (yandex.metrics jivosite google.metrics и прочие). Они будут выведены внизу страницы, перед закрывающим тегом body'),
Expand Down Expand Up @@ -394,9 +402,16 @@ public function getConfigFormFields()
HTML
,
],

'is_allow_index_adult_content' => [
'class' => BoolField::class,
'allowNull' => false
],

];
} else {
$indexing = [

'robotsContent' => [
'class' => TextareaField::class,
/*'on afterRender' => function(ViewRenderEvent $e) {
Expand All @@ -411,6 +426,12 @@ public function getConfigFormFields()
'rows' => 15,
],
],

'is_allow_index_adult_content' => [
'class' => BoolField::class,
'allowNull' => false
],

];
}

Expand Down
22 changes: 22 additions & 0 deletions src/controllers/SitemapController.php
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,13 @@ protected function _addTrees(&$data = [])
'is_index' => 1,
]);

//Разделы 18 + не добавлять!
if (!\Yii::$app->seo->is_allow_index_adult_content) {
$query->andWhere([
'is_adult' => 0,
]);
}

if (\Yii::$app->seo->treeTypeIds) {
$query->andWhere(['tree_type_id' => \Yii::$app->seo->treeTypeIds]);
}
Expand Down Expand Up @@ -131,6 +138,14 @@ protected function _addTrees(&$data = [])
protected function _addSavedFilters(&$data = [])
{
$query = CmsSavedFilter::find()->cmsSite();

//Разделы 18 + не добавлять!
if (!\Yii::$app->seo->is_allow_index_adult_content) {
$query->joinWith("cmsTree as cmsTree")->andWhere([
'cmsTree.is_adult' => 0,
]);
}

$savedFilters = $query->all();

if ($savedFilters) {
Expand Down Expand Up @@ -253,6 +268,13 @@ protected function _addElements(&$data = [])
$query->andWhere(['content_id' => \Yii::$app->seo->contentIds]);
}

//Разделы 18 + не добавлять!
if (!\Yii::$app->seo->is_allow_index_adult_content) {
$query->andWhere([
'is_adult' => 0,
]);
}

$elements = $query->orderBy(['updated_at' => SORT_DESC, 'priority' => SORT_ASC])->all();

//Добавление элементов в карту
Expand Down

0 comments on commit ead3470

Please sign in to comment.