All checks were successful
Deploy / Deploy to Production (push) Successful in 22s
- Ajout de tobimori/kirby-seo via Composer
- snippet('seo/head') dans header.php (remplace les meta manuels)
- snippet('seo/schemas') dans footer.php pour JSON-LD
- Onglet SEO ajouté dans site.yml et tous les blueprints de pages
- Configuration SEO dans config.php (sitemap, robots, canonicalBase TODO)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
41 lines
912 B
PHP
41 lines
912 B
PHP
<?php
|
|
|
|
namespace tobimori\Seo\Buttons;
|
|
|
|
use Kirby\Cms\Page;
|
|
use Kirby\Panel\Ui\Buttons\ViewButton;
|
|
use Kirby\Toolkit\I18n;
|
|
use Kirby\Toolkit\Str;
|
|
|
|
class RobotsViewButton extends ViewButton
|
|
{
|
|
public function __construct(Page $model)
|
|
{
|
|
$robots = $model->robots();
|
|
|
|
$theme = 'positive-icon';
|
|
$icon = 'robots';
|
|
$text = I18n::translate('seo.fields.robots.indicator.index');
|
|
|
|
if (Str::contains($robots, 'no') && !Str::contains($robots, 'noindex')) {
|
|
$theme = 'notice-icon';
|
|
$icon = 'robots-off';
|
|
$text = I18n::translate('seo.fields.robots.indicator.any');
|
|
}
|
|
|
|
if (Str::contains($robots, 'noindex')) {
|
|
$theme = 'negative-icon';
|
|
$icon = 'robots-off';
|
|
$text = I18n::translate('seo.fields.robots.indicator.noindex');
|
|
}
|
|
|
|
parent::__construct(
|
|
model: $model,
|
|
icon: $icon,
|
|
text: $text,
|
|
theme: $theme,
|
|
link: $model->panel()->url() . '?tab=seo',
|
|
responsive: true
|
|
);
|
|
}
|
|
}
|