@@ -118,7 +118,7 @@ discard block |
||
118 | 118 | public static function create($schemaType, array $config = []): MetaJsonLd |
119 | 119 | { |
120 | 120 | // Try the passed in $schemaType |
121 | - $className = self::SCHEMA_NAMESPACE_PREFIX . $schemaType; |
|
121 | + $className = self::SCHEMA_NAMESPACE_PREFIX.$schemaType; |
|
122 | 122 | /** @var $model MetaJsonLd */ |
123 | 123 | if (class_exists($className)) { |
124 | 124 | self::cleanProperties($className, $config); |
@@ -126,7 +126,7 @@ discard block |
||
126 | 126 | return new $className($config); |
127 | 127 | } |
128 | 128 | // Try the prefixed $schemaType |
129 | - $className = self::SCHEMA_NAMESPACE_PREFIX . self::SCHEMA_NAME_PREFIX . $schemaType; |
|
129 | + $className = self::SCHEMA_NAMESPACE_PREFIX.self::SCHEMA_NAME_PREFIX.$schemaType; |
|
130 | 130 | /** @var $model MetaJsonLd */ |
131 | 131 | if (class_exists($className)) { |
132 | 132 | self::cleanProperties($className, $config); |
@@ -374,7 +374,7 @@ discard block |
||
374 | 374 | foreach ($dataToValidate as $data) { |
375 | 375 | /** @var array $expectedTypes */ |
376 | 376 | foreach ($expectedTypes as $expectedType) { |
377 | - $className = 'nystudio107\\seomatic\\models\\jsonld\\' . $expectedType; |
|
377 | + $className = 'nystudio107\\seomatic\\models\\jsonld\\'.$expectedType; |
|
378 | 378 | switch ($expectedType) { |
379 | 379 | // Text always validates |
380 | 380 | case 'Text': |
@@ -455,7 +455,7 @@ discard block |
||
455 | 455 | } |
456 | 456 | } |
457 | 457 | if (!$validated) { |
458 | - $this->addError($attribute, 'Must be one of these types: ' . implode(', ', $expectedTypes)); |
|
458 | + $this->addError($attribute, 'Must be one of these types: '.implode(', ', $expectedTypes)); |
|
459 | 459 | } |
460 | 460 | } |
461 | 461 | } |
@@ -125,7 +125,7 @@ discard block |
||
125 | 125 | $suffix = ''; |
126 | 126 | break; |
127 | 127 | } |
128 | - $lengthAdjust = mb_strlen($prefix . $suffix); |
|
128 | + $lengthAdjust = mb_strlen($prefix.$suffix); |
|
129 | 129 | // Truncate the twitter:title tag content |
130 | 130 | $truncLen = Seomatic::$settings->maxTitleLength - $lengthAdjust; |
131 | 131 | if ($truncLen < 0) { |
@@ -138,7 +138,7 @@ discard block |
||
138 | 138 | '…' |
139 | 139 | ); |
140 | 140 | } |
141 | - $data['content'] = $prefix . $data['content'] . $suffix; |
|
141 | + $data['content'] = $prefix.$data['content'].$suffix; |
|
142 | 142 | } |
143 | 143 | |
144 | 144 | return $shouldRender; |
@@ -125,7 +125,7 @@ discard block |
||
125 | 125 | $suffix = ''; |
126 | 126 | break; |
127 | 127 | } |
128 | - $lengthAdjust = mb_strlen($prefix . $suffix); |
|
128 | + $lengthAdjust = mb_strlen($prefix.$suffix); |
|
129 | 129 | // Truncate the og:title tag content |
130 | 130 | $truncLen = Seomatic::$settings->maxTitleLength - $lengthAdjust; |
131 | 131 | if ($truncLen < 0) { |
@@ -138,7 +138,7 @@ discard block |
||
138 | 138 | '…' |
139 | 139 | ); |
140 | 140 | } |
141 | - $data['content'] = $prefix . $data['content'] . $suffix; |
|
141 | + $data['content'] = $prefix.$data['content'].$suffix; |
|
142 | 142 | } |
143 | 143 | |
144 | 144 | return $shouldRender; |
@@ -143,16 +143,16 @@ discard block |
||
143 | 143 | break; |
144 | 144 | } |
145 | 145 | // Handle the case of empty titles |
146 | - if ($prefix === (' ' . $separator . ' ')) { |
|
146 | + if ($prefix === (' '.$separator.' ')) { |
|
147 | 147 | $prefix = ''; |
148 | 148 | } |
149 | - if ($suffix === (' ' . $separator)) { |
|
149 | + if ($suffix === (' '.$separator)) { |
|
150 | 150 | $suffix = ''; |
151 | 151 | } |
152 | 152 | // Remove potential double spaces |
153 | 153 | $prefix = preg_replace('/\s+/', ' ', $prefix); |
154 | 154 | $suffix = preg_replace('/\s+/', ' ', $suffix); |
155 | - $lengthAdjust = mb_strlen($prefix . $suffix); |
|
155 | + $lengthAdjust = mb_strlen($prefix.$suffix); |
|
156 | 156 | // Parse the data |
157 | 157 | $scenario = $this->scenario; |
158 | 158 | $this->setScenario('render'); |
@@ -171,7 +171,7 @@ discard block |
||
171 | 171 | '…' |
172 | 172 | ); |
173 | 173 | } |
174 | - $data = $prefix . $data . $suffix; |
|
174 | + $data = $prefix.$data.$suffix; |
|
175 | 175 | } else { |
176 | 176 | // If no title is provided, just use the site name |
177 | 177 | $data = MetaValueHelper::parseString($this->siteName); |
@@ -180,7 +180,7 @@ discard block |
||
180 | 180 | $data = trim($data); |
181 | 181 | // devMode |
182 | 182 | if (Seomatic::$devMode) { |
183 | - $data = Seomatic::$settings->devModeTitlePrefix . $data; |
|
183 | + $data = Seomatic::$settings->devModeTitlePrefix.$data; |
|
184 | 184 | } |
185 | 185 | } |
186 | 186 |
@@ -178,7 +178,7 @@ discard block |
||
178 | 178 | * @param MetaBundle $metaBundle |
179 | 179 | * @param bool $forceUpdate |
180 | 180 | */ |
181 | - public function syncBundleWithConfig(MetaBundle &$metaBundle, bool $forceUpdate = false) |
|
181 | + public function syncBundleWithConfig(MetaBundle & $metaBundle, bool $forceUpdate = false) |
|
182 | 182 | { |
183 | 183 | $prevMetaBundle = $metaBundle; |
184 | 184 | $config = []; |
@@ -259,8 +259,8 @@ discard block |
||
259 | 259 | */ |
260 | 260 | public function updateMetaBundle(MetaBundle $metaBundle, int $siteId) |
261 | 261 | { |
262 | - $metaBundle->sourceName = (string)$metaBundle->sourceName; |
|
263 | - $metaBundle->sourceTemplate = (string)$metaBundle->sourceTemplate; |
|
262 | + $metaBundle->sourceName = (string) $metaBundle->sourceName; |
|
263 | + $metaBundle->sourceTemplate = (string) $metaBundle->sourceTemplate; |
|
264 | 264 | // Make sure it validates |
265 | 265 | if ($metaBundle->validate(null, true)) { |
266 | 266 | // Save it out to a record |
@@ -270,7 +270,7 @@ discard block |
||
270 | 270 | 'sourceSiteId' => $siteId, |
271 | 271 | ]; |
272 | 272 | if ($metaBundle->typeId !== null) { |
273 | - $metaBundle->typeId = (int)$metaBundle->typeId; |
|
273 | + $metaBundle->typeId = (int) $metaBundle->typeId; |
|
274 | 274 | } |
275 | 275 | if (!empty($metaBundle->typeId)) { |
276 | 276 | $params['typeId'] = $metaBundle->typeId; |
@@ -286,7 +286,7 @@ discard block |
||
286 | 286 | // @TODO remove this hack that doesn't allow environment-transformed settings to be saved in a meta bundle with a proper system to address it |
287 | 287 | // The issue was that the containers were getting saved to the db with a hard-coded setting in them, because they'd |
288 | 288 | // been set that way by the environment, whereas to be changeable via the GUI, it needs to be set to {seomatic.meta.robots} |
289 | - $robotsTag = $metaBundle->metaContainers[MetaTagContainer::CONTAINER_TYPE . TagService::GENERAL_HANDLE]->data['robots'] ?? null; |
|
289 | + $robotsTag = $metaBundle->metaContainers[MetaTagContainer::CONTAINER_TYPE.TagService::GENERAL_HANDLE]->data['robots'] ?? null; |
|
290 | 290 | if (!empty($robotsTag)) { |
291 | 291 | $robotsTag->content = $robotsTag->environment['live']['content'] ?? '{{ seomatic.meta.robots }}'; |
292 | 292 | } |
@@ -368,7 +368,7 @@ discard block |
||
368 | 368 | $metaBundleDefaults = ArrayHelper::merge( |
369 | 369 | $seoElement::metaBundleConfig($sourceModel), |
370 | 370 | [ |
371 | - 'sourceTemplate' => (string)$siteSetting->template, |
|
371 | + 'sourceTemplate' => (string) $siteSetting->template, |
|
372 | 372 | 'sourceSiteId' => $siteSetting->siteId, |
373 | 373 | 'sourceAltSiteSettings' => $siteSettingsArray, |
374 | 374 | 'sourceDateUpdated' => $dateUpdated, |
@@ -416,7 +416,7 @@ discard block |
||
416 | 416 | public function getMetaBundleBySourceHandle(string $sourceBundleType, string $sourceHandle, int $sourceSiteId, $typeId = null) |
417 | 417 | { |
418 | 418 | $metaBundle = null; |
419 | - $typeId = (int)$typeId; |
|
419 | + $typeId = (int) $typeId; |
|
420 | 420 | // See if we have the meta bundle cached |
421 | 421 | if (!empty($this->metaBundlesBySourceHandle[$sourceBundleType][$sourceHandle][$sourceSiteId][$typeId])) { |
422 | 422 | $id = $this->metaBundlesBySourceHandle[$sourceBundleType][$sourceHandle][$sourceSiteId][$typeId]; |
@@ -503,7 +503,7 @@ discard block |
||
503 | 503 | /** @var Section|CategoryGroup|ProductType $sourceModel */ |
504 | 504 | $sourceModel = $seoElement::sourceModelFromId($sourceId); |
505 | 505 | if ($sourceModel !== null) { |
506 | - $metaBundle->sourceName = (string)$sourceModel->name; |
|
506 | + $metaBundle->sourceName = (string) $sourceModel->name; |
|
507 | 507 | $metaBundle->sourceHandle = $sourceModel->handle; |
508 | 508 | } |
509 | 509 | } |
@@ -544,7 +544,7 @@ discard block |
||
544 | 544 | public function getMetaBundleBySourceId(string $sourceBundleType, int $sourceId, int $sourceSiteId, $typeId = null) |
545 | 545 | { |
546 | 546 | $metaBundle = null; |
547 | - $typeId = (int)$typeId; |
|
547 | + $typeId = (int) $typeId; |
|
548 | 548 | // See if we have the meta bundle cached |
549 | 549 | if (!empty($this->metaBundlesBySourceId[$sourceBundleType][$sourceId][$sourceSiteId][$typeId])) { |
550 | 550 | $id = $this->metaBundlesBySourceId[$sourceBundleType][$sourceId][$sourceSiteId][$typeId]; |
@@ -739,7 +739,7 @@ discard block |
||
739 | 739 | ->from(['{{%seomatic_metabundles}}']) |
740 | 740 | ->where(['=', 'sourceBundleType', $seoElement::META_BUNDLE_TYPE]); |
741 | 741 | |
742 | - if ((int)$sourceSiteId !== 0) { |
|
742 | + if ((int) $sourceSiteId !== 0) { |
|
743 | 743 | $subQuery->andWhere(['sourceSiteId' => $sourceSiteId]); |
744 | 744 | } |
745 | 745 | if ($filter !== '') { |
@@ -776,7 +776,7 @@ discard block |
||
776 | 776 | public function getContentMetaBundleForElement(Element $element) |
777 | 777 | { |
778 | 778 | $source = $this->getMetaSourceFromElement($element); |
779 | - $key = implode(".", $source) . '.' . $element->siteId; |
|
779 | + $key = implode(".", $source).'.'.$element->siteId; |
|
780 | 780 | |
781 | 781 | if (empty($this->elementContentMetaBundles[$key])) { |
782 | 782 | $this->elementContentMetaBundles[$key] = $this->getMetaBundleBySourceId($source[1], $source[0], $element->siteId, $source[4]); |
@@ -798,10 +798,10 @@ discard block |
||
798 | 798 | $seoSettingsField = Craft::$app->getFields()->getFieldByHandle($fieldHandle); |
799 | 799 | if ($seoSettingsField) { |
800 | 800 | $seoSettingsEnabledFields = array_flip(array_merge( |
801 | - (array)$seoSettingsField->generalEnabledFields, |
|
802 | - (array)$seoSettingsField->twitterEnabledFields, |
|
803 | - (array)$seoSettingsField->facebookEnabledFields, |
|
804 | - (array)$seoSettingsField->sitemapEnabledFields |
|
801 | + (array) $seoSettingsField->generalEnabledFields, |
|
802 | + (array) $seoSettingsField->twitterEnabledFields, |
|
803 | + (array) $seoSettingsField->facebookEnabledFields, |
|
804 | + (array) $seoSettingsField->sitemapEnabledFields |
|
805 | 805 | )); |
806 | 806 | // Always include some fields, as they are calculated even if not explicitly included |
807 | 807 | $seoSettingsEnabledFields = array_merge( |
@@ -341,7 +341,7 @@ discard block |
||
341 | 341 | $lastSegment = end($segments); |
342 | 342 | $site = Craft::$app->getSites()->getSiteByHandle($lastSegment); |
343 | 343 | if ($site !== null) { |
344 | - $siteSuffix = '/' . $lastSegment; |
|
344 | + $siteSuffix = '/'.$lastSegment; |
|
345 | 345 | } |
346 | 346 | } |
347 | 347 | $currentUser = Craft::$app->getUser()->getIdentity(); |
@@ -349,31 +349,31 @@ discard block |
||
349 | 349 | if ($currentUser->can('seomatic:dashboard')) { |
350 | 350 | $subNavs['dashboard'] = [ |
351 | 351 | 'label' => Craft::t('seomatic', 'Dashboard'), |
352 | - 'url' => 'seomatic/dashboard' . $siteSuffix, |
|
352 | + 'url' => 'seomatic/dashboard'.$siteSuffix, |
|
353 | 353 | ]; |
354 | 354 | } |
355 | 355 | if ($currentUser->can('seomatic:global-meta')) { |
356 | 356 | $subNavs['global'] = [ |
357 | 357 | 'label' => Craft::t('seomatic', 'Global SEO'), |
358 | - 'url' => 'seomatic/global/general' . $siteSuffix, |
|
358 | + 'url' => 'seomatic/global/general'.$siteSuffix, |
|
359 | 359 | ]; |
360 | 360 | } |
361 | 361 | if ($currentUser->can('seomatic:content-meta')) { |
362 | 362 | $subNavs['content'] = [ |
363 | 363 | 'label' => Craft::t('seomatic', 'Content SEO'), |
364 | - 'url' => 'seomatic/content' . $siteSuffix, |
|
364 | + 'url' => 'seomatic/content'.$siteSuffix, |
|
365 | 365 | ]; |
366 | 366 | } |
367 | 367 | if ($currentUser->can('seomatic:site-settings')) { |
368 | 368 | $subNavs['site'] = [ |
369 | 369 | 'label' => Craft::t('seomatic', 'Site Settings'), |
370 | - 'url' => 'seomatic/site/identity' . $siteSuffix, |
|
370 | + 'url' => 'seomatic/site/identity'.$siteSuffix, |
|
371 | 371 | ]; |
372 | 372 | } |
373 | 373 | if ($currentUser->can('seomatic:tracking-scripts')) { |
374 | 374 | $subNavs['tracking'] = [ |
375 | 375 | 'label' => Craft::t('seomatic', 'Tracking Scripts'), |
376 | - 'url' => 'seomatic/tracking/gtag' . $siteSuffix, |
|
376 | + 'url' => 'seomatic/tracking/gtag'.$siteSuffix, |
|
377 | 377 | ]; |
378 | 378 | } |
379 | 379 | $editableSettings = true; |
@@ -418,7 +418,7 @@ discard block |
||
418 | 418 | Event::on( |
419 | 419 | Plugins::class, |
420 | 420 | Plugins::EVENT_AFTER_INSTALL_PLUGIN, |
421 | - function (PluginEvent $event) { |
|
421 | + function(PluginEvent $event) { |
|
422 | 422 | if ($event->plugin === $this) { |
423 | 423 | // Invalidate our caches after we've been installed |
424 | 424 | $this->clearAllCaches(); |
@@ -439,7 +439,7 @@ discard block |
||
439 | 439 | Event::on( |
440 | 440 | ClearCaches::class, |
441 | 441 | ClearCaches::EVENT_REGISTER_CACHE_OPTIONS, |
442 | - function (RegisterCacheOptionsEvent $event) { |
|
442 | + function(RegisterCacheOptionsEvent $event) { |
|
443 | 443 | Craft::debug( |
444 | 444 | 'ClearCaches::EVENT_REGISTER_CACHE_OPTIONS', |
445 | 445 | __METHOD__ |
@@ -455,7 +455,7 @@ discard block |
||
455 | 455 | Event::on( |
456 | 456 | Plugins::class, |
457 | 457 | Plugins::EVENT_BEFORE_SAVE_PLUGIN_SETTINGS, |
458 | - function (PluginEvent $event) { |
|
458 | + function(PluginEvent $event) { |
|
459 | 459 | if ($event->plugin === $this && !Craft::$app->getDb()->getSupportsMb4()) { |
460 | 460 | // For all the emojis |
461 | 461 | $settingsModel = $this->getSettings(); |
@@ -485,7 +485,7 @@ discard block |
||
485 | 485 | Event::on( |
486 | 486 | Plugins::class, |
487 | 487 | Plugins::EVENT_AFTER_LOAD_PLUGINS, |
488 | - function () { |
|
488 | + function() { |
|
489 | 489 | // Delay registering SEO Elements to give other plugins a chance to load first |
490 | 490 | $this->seoElements->getAllSeoElementTypes(false); |
491 | 491 | // Delay installing GQL handlers to give other plugins a chance to register their own first |
@@ -506,7 +506,7 @@ discard block |
||
506 | 506 | Event::on( |
507 | 507 | Fields::class, |
508 | 508 | Fields::EVENT_REGISTER_FIELD_TYPES, |
509 | - static function (RegisterComponentTypesEvent $event) { |
|
509 | + static function(RegisterComponentTypesEvent $event) { |
|
510 | 510 | $event->types[] = SeoSettingsField::class; |
511 | 511 | $event->types[] = Seomatic_MetaField::class; |
512 | 512 | } |
@@ -515,7 +515,7 @@ discard block |
||
515 | 515 | Event::on( |
516 | 516 | Elements::class, |
517 | 517 | Elements::EVENT_AFTER_SAVE_ELEMENT, |
518 | - static function (ElementEvent $event) { |
|
518 | + static function(ElementEvent $event) { |
|
519 | 519 | Craft::debug( |
520 | 520 | 'Elements::EVENT_AFTER_SAVE_ELEMENT', |
521 | 521 | __METHOD__ |
@@ -535,7 +535,7 @@ discard block |
||
535 | 535 | Event::on( |
536 | 536 | Elements::class, |
537 | 537 | Elements::EVENT_AFTER_DELETE_ELEMENT, |
538 | - static function (ElementEvent $event) { |
|
538 | + static function(ElementEvent $event) { |
|
539 | 539 | Craft::debug( |
540 | 540 | 'Elements::EVENT_AFTER_DELETE_ELEMENT', |
541 | 541 | __METHOD__ |
@@ -554,19 +554,19 @@ discard block |
||
554 | 554 | Event::on( |
555 | 555 | Entry::class, |
556 | 556 | Element::EVENT_REGISTER_PREVIEW_TARGETS, |
557 | - static function (RegisterPreviewTargetsEvent $e) { |
|
557 | + static function(RegisterPreviewTargetsEvent $e) { |
|
558 | 558 | /** @var Element $element */ |
559 | 559 | $element = $e->sender; |
560 | 560 | if ($element->uri !== null) { |
561 | 561 | $e->previewTargets[] = [ |
562 | - 'label' => ' |