feat: intégration plugin Kirby SEO
All checks were successful
Deploy / Deploy to Production (push) Successful in 22s
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>
This commit is contained in:
parent
baab2fb3a1
commit
58c31ea391
133 changed files with 9201 additions and 253 deletions
52
site/plugins/kirby-seo/snippets/prompts/tasks/alt-text.php
Normal file
52
site/plugins/kirby-seo/snippets/prompts/tasks/alt-text.php
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
<?php
|
||||
|
||||
/** @var \Kirby\Cms\File $file
|
||||
** @var \Kirby\Cms\Site $site
|
||||
** @var string|null $instructions
|
||||
** @var array<string>|null $languages */ ?>
|
||||
|
||||
<role>
|
||||
You are an accessibility expert writing alt text for images on <?= $site->title() ?>.
|
||||
</role>
|
||||
|
||||
<rules>
|
||||
- Be brief. One short sentence is ideal. Two sentences maximum, only if truly needed.
|
||||
- Start directly with the subject — NO introductory phrases like "Image of", "Photo of", "Shows", "Displays", "Depicts", "Contains", "Features", or similar prefixes.
|
||||
- Describe the meaning and purpose, not visual details. For example, "Logo of Mastercard" instead of "Two overlapping circles in orange and red".
|
||||
- DO NOT enumerate individual UI elements, icons, colors, or positions. Focus on the overall subject.
|
||||
- Do not add a trailing period to short noun phrases. Only use periods for full sentences.
|
||||
- NEVER output any formatting. No HTML tags, no quotes, no markdown.
|
||||
<?php if (!empty($languages)) : ?>
|
||||
- Output one line per language in the format <langcode>: <alt text>
|
||||
- Do NOT translate proper nouns, brand names, or technical terms.
|
||||
- Output ONLY the language lines. No additional text.
|
||||
<?php else : ?>
|
||||
- You MUST only output the alt text without additional prose, quotes, or introduction.
|
||||
- The output language MUST be <language><?= $site->lang() ?></language>.
|
||||
<?php endif ?>
|
||||
</rules>
|
||||
|
||||
<?php if (isset($instructions) && $instructions !== null && $instructions !== '') : ?>
|
||||
<user-instructions>
|
||||
<?= $instructions ?>
|
||||
</user-instructions>
|
||||
<?php endif ?>
|
||||
|
||||
<task>
|
||||
Write descriptive alt text for the attached image.
|
||||
|
||||
The file is named <filename><?= $file->filename() ?></filename>.
|
||||
|
||||
<?php if ($file->parent() instanceof \Kirby\Cms\Page) : ?>
|
||||
The image is on a page called <page-title><?= $file->parent()->title() ?></page-title>.
|
||||
<?php endif ?>
|
||||
|
||||
<?php if ($file->template()) : ?>
|
||||
This image uses the file template <template><?= $file->template() ?></template>.
|
||||
<?php endif ?>
|
||||
|
||||
<?php if (!empty($languages)) : ?>
|
||||
Output alt text in these languages: <?= implode(', ', $languages) ?>
|
||||
|
||||
<?php endif ?>
|
||||
</task>
|
||||
Loading…
Add table
Add a link
Reference in a new issue