chore: update kirby-seo plugin to v2.0.0-alpha.12

Update plugin from v1.1.2 to v2.0.0-alpha.12 for Kirby 5 compatibility.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
isUnknown 2026-02-10 16:23:23 +01:00
parent ff215de723
commit 04a14a7f1f
70 changed files with 6142 additions and 3 deletions

View file

@ -0,0 +1,24 @@
<?php
/** @var \Kirby\Cms\Page $page
** @var \Kirby\Cms\Site $site
** @var string|null $instructions
** @var string|null $edit */
$meta = $page->metadata();
snippet('seo/prompts/introduction', [
'instructions' => $instructions ?? null,
'edit' => $edit ?? null
]); ?>
<task>
Create a useful meta description for this page called <page-title><?= $page->title()->value() ?></page-title>. <?php if ($page->isHomePage()) : ?>This page is the homepage of the website.<?php endif ?>
The entire meta description SHOULD be between 120 and 158 characters long.
You'll receive the content of the page as well as any meta tags that are already set below.
</task>
<?php snippet('seo/prompts/meta', ['currentField' => 'metaDescription']);
snippet('seo/prompts/content');

View file

@ -0,0 +1,25 @@
<?php
/** @var \Kirby\Cms\Page $page
** @var \Kirby\Cms\Site $site
** @var string|null $instructions
** @var string|null $edit */
$meta = $page->metadata();
snippet('seo/prompts/introduction', [
'instructions' => $instructions ?? null,
'edit' => $edit ?? null
]); ?>
<task>
Create a useful open graph description for this page called <page-title><?= $page->title()->value() ?></page-title>. <?php if ($page->isHomePage()) : ?>This page is the homepage of the website.<?php endif ?>
This description will be shown on social media platforms like Facebook, WhatsApp and LinkedIn.
The entire meta description SHOULD be between 120 and 158 characters long.
You'll receive the content of the page as well as any meta tags that are already set below.
</task>
<?php snippet('seo/prompts/meta', ['currentField' => 'ogDescription']);
snippet('seo/prompts/content');

View file

@ -0,0 +1,25 @@
<?php
/** @var \Kirby\Cms\Page $page
** @var \Kirby\Cms\Site $site
** @var string|null $instructions
** @var string|null $edit */
snippet('seo/prompts/introduction', [
'instructions' => $instructions ?? null,
'edit' => $edit ?? null
]); ?>
<task>
Create a useful GLOBAL open graph description for this site <site-title><?= $site->title()->value() ?>.</site-title>
This description will be shown on social media platforms like Facebook, WhatsApp and LinkedIn.
This description is meant as FALLBACK for when the page does not have a meta description itself.
This description should be unique and relevant to the site's content.
The entire meta description SHOULD be between 120 and 158 characters long.
You'll receive the content of the home page as well as any meta tags that are already set below.
</task>
<?php snippet('seo/prompts/site-meta', ['currentField' => 'ogDescription']);
snippet('seo/prompts/content'); ?>

View file

@ -0,0 +1,24 @@
<?php
/** @var \Kirby\Cms\Page $page
** @var \Kirby\Cms\Site $site
** @var string|null $instructions
** @var string|null $edit */
snippet('seo/prompts/introduction', [
'instructions' => $instructions ?? null,
'edit' => $edit ?? null
]); ?>
<task>
Create a useful GLOBAL meta description for this site <site-title><?= $site->title()->value() ?>.</site-title>
This description is meant as FALLBACK for when the page does not have a meta description itself.
This description should be unique and relevant to the site's content.
The entire meta description SHOULD be between 120 and 158 characters long.
You'll receive the content of the home page as well as any meta tags that are already set below.
</task>
<?php snippet('seo/prompts/site-meta', ['currentField' => 'metaDescription']);
snippet('seo/prompts/content'); ?>

View file

@ -0,0 +1,39 @@
<?php
use Kirby\Toolkit\Str;
/** @var \Kirby\Cms\Page $page
** @var \Kirby\Cms\Site $site
** @var string|null $instructions
** @var string|null $edit */
$meta = $page->metadata();
snippet('seo/prompts/introduction', [
'instructions' => $instructions ?? null,
'edit' => $edit ?? null
]); ?>
<task>
Create a useful meta title for this page called <page-title><?= $page->title()->value() ?></page-title>. <?php if ($page->isHomePage()) : ?>This page is the homepage of the website. AVOID an overly generic title such as 'Home'.<?php endif ?>
<?php if ($page->useTitleTemplate()->isEmpty() ? true : $page->useTitleTemplate()->toBool()):
$template = $meta->get('metaTemplate');
$templatePreview = $page->toString($template, ['title' => '{{ title }}']);
$templateBaseLength = Str::length($page->toString($template, ['title' => '']));
?>
The final page title will be rendered as:
<template><?= $templatePreview ?></template>
Where {{ title }} is your page title. The entire title SHOULD be between <?= max(0, 50 - $templateBaseLength) ?>-<?= max(max(0, 50 - $templateBaseLength), 60 - $templateBaseLength) ?> characters long.
DO NOT output the Title Template. ONLY output what should be placed inside {{ title }}. DO NOT repeat ANYTHING that exists in the template. You MUST NOT repeat the name of the site.
<?php else: ?>
Your response will be set as title without any changes. The entire title SHOULD be between 50-60 characters long.
<?php endif; ?>
If useful for the customers niche, include a keyword for the location. AVOID for global companies or niche subpages.
</task>
<?php snippet('seo/prompts/meta', ['currentField' => 'metaTitle']);
snippet('seo/prompts/content');