Changelog
Release history
2.0.0-beta.5
Pre-release๐ Bug fixes
- Fix canonical URL comparison when
canonical.trailingSlashis enabled (@notz, #188) - Add missing labels and IDs to SEO Writer and SEO preview form controls (@FlorianBoe, #187)
- Prevent fatal errors for non-resizable Open Graph images and hide them from the default image picker (#190)
Full Changelog: https://github.com/tobimori/kirby-seo/compare/2.0.0-beta.4...2.0.0-beta.5
2.0.0-beta.4
Pre-releaseโจ Enhancements
Full Changelog: https://github.com/tobimori/kirby-seo/compare/2.0.0-beta.3...2.0.0-beta.4
2.0.0-beta.3
Pre-release๐จ Breaking changes
- Enable
fallbackFieldscascade level by default: a page'sdescriptionis now used asog:descriptionbefore site-wide Open Graph values are reached, preventing site-level OG descriptions from overriding page-specific meta descriptions. RemovefallbackFieldsfrom the cascade to restore the previous behavior. See the Meta Cascade docs for details.
โจ Enhancements
- Improve sitemap XSL stylesheet with language alternate badges, cleaner URL display, and fixed table layout
- Resolve template variable labels in SEO Writer placeholder text
๐ Bug fixes
- Fix sitemap stylesheet URL not resolving correctly on multi-language sites
- Remove unnecessary
role="presentation"attribute from decorative images in alt text output
2.0.0-beta.2
Pre-release๐ Bug fixes
- Fix SEO Writer regression
Full Changelog: https://github.com/tobimori/kirby-seo/compare/2.0.0-beta.1...2.0.0-beta.2
2.0.0-beta.1
Pre-release๐ Features
- Add alt text field (
alt-text) with AI-powered alt text generation from images, with auto-generation on upload - Add Google Gemini as a built-in AI provider
- Add background processing support for alt text generation via kirby-queues
โจ Enhancements
- Add multimodal image support to AI drivers (Anthropic, OpenAI, Gemini)
๐ Bug fixes
- Fix robots indicator button not displaying correctly (#184)
โป๏ธ Refactored
- Extract shared AI streaming utilities (
useAiStream,consumeSSEStream) from field components
Full Changelog: https://github.com/tobimori/kirby-seo/compare/2.0.0-alpha.13...2.0.0-beta.1
2.0.0-alpha.13
Pre-release๐ Bug Fixes
- Fix double-encoded HTML entities in meta tag output when using Writer fields (#183)
2.0.0-alpha.12
Pre-release๐ Bug Fixes
- Fix x-default hreflang pointing to language-specific URL instead of language-neutral switcher URL in multi-language setups (#177)
2.0.0-alpha.11
Pre-release๐ Bug Fixes
- Fix language code not being passed in page.update:after hook, breaking multi-language page updates
- Fix hook running on pages without SEO tab, breaking compatibility with other plugins like DreamForm
2.0.0-alpha.10
Pre-release2.0.0-alpha.9
Pre-release2.0.0-alpha.8
Pre-release๐ Bug Fixes
- Fix "using $this when not in object context" error when saving pages (#167)
- Fix favicon not displaying in Google preview component
2.0.0-alpha.7
Pre-release๐ Features
- Add IndexNow support for instant search engine notifications
- Add components config syntax for easier component customization
2.0.0-alpha.6
Pre-release๐ Features
- Add AI-powered meta tag generation with OpenAI and Anthropic support
- Add custom SEO writer field with specialized toolbar buttons
๐ Bug Fixes
- Fix sitemap returning 404 for HEAD requests - caused "Sitemap could not be read" errors in Google Search Console (#164, thanks @tomsl123)
- Fix sitemap XSL stylesheet loading with wrong language prefix on multi-language sites (#160)
โจ Enhancements
- Add proper HTTP method handling for sitemap routes (OPTIONS returns 204, unsupported methods return 405)
- Fix writer toolbar button width (thanks @danburzo)
๐ Translations
- Add Romanian translation (thanks @danburzo)
2.0.0-alpha.5
Pre-release๐ Features
- Add custom SEO nodes for writer field
- Add custom SEO writer field
- Strip allowed HTML tags from meta tags for cleaner output
โจ Enhancements
- Improve site preview styling
2.0.0-alpha.4
Pre-release๐ Features
- Add dark mode support for SEO previews
- Update Google SEO preview component to match current Google design
๐ Bug Fixes
- Fix "Storage for the page is immutable" error when saving pages with kirby-seo fields (#145, thanks @ovenum)
- Fix x-default alternate link using wrong slug on non-default languages (#146)
- Fix Kirby template braces not being escaped in placeholder text (thanks @lukasleitsch)
โป๏ธ Refactored
- Simplify files query in og-image.php (thanks @ovenum)
2.0.0-alpha.3
Pre-release๐ Bug Fixes
- Fix all pages returning 404 when robots.index option is set to true (#140)
2.0.0-alpha.2
Pre-release๐ Bug Fixes
- Fix "Value of type null is not callable" error caused by missing default.lang option (#139)
2.0.0-alpha.1
Pre-release๐จ Breaking Changes
- Requires Kirby 5
- Remove schema-org package from default plugin distribution - install separately if needed (#48)
- Major refactor of language handling for multi-language sites (#128)
๐ Features
- Add priority meta tags support (#112)
- Add trailing slash configuration (#136)
- Add Mastodon profile link as rel="me" (#92)
- Skip alternate hreflang tags when URL is not canonical (#98)
๐ Bug Fixes
- Fix OG image width/height not being set correctly (#91)
- Fix wrong sitemap URL on multi-language pages (#124)
- Fix sitemap URL not using canonical base URL (#88)
๐ Translations
- Add Swedish translation (thanks @olach)
- Add Dutch translation (thanks @wietseneven)
- Add Czech translation (thanks @jan-herman)
1.1.2
๐ Bug Fixes
- Google Search preview now shows the title correctly with the title preview (#90)
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.1.1...1.1.2
1.1.1
๐ Bug Fixes
- Empty robots fields do not throw error when saving anymore
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.1.0...1.1.1
1.1.0
๐ Features
/sitemapnow redirects to/sitemap.xml(#84) You can disable this behaviour by settingtobimori.seo.sitemap.redirecttofalse.
๐ Bug FIxes
- Robots section defaults are now set correctly by Kirby logic & using a page.update hook (#89)
- Robots page settings now don't show up if Robots is disabled (#87)
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0...1.1.0
1.0.0
First stable production release of kirby-seo.
๐ฃ Breaking changes
If you previously used kirby-seo 0.4.0 or earlier, please follow the Migration guide.
๐ New Features
- Kirby 4.0 redesign compatibility (#12)
- Complete refactor of the Meta class & cascading behaviour
- Customizable cascade option
- New languages: Turkish ๐น๐ท & Portuguese ๐ต๐น (#49 / #69)
- New Sitemap functionality (#47)
- Custom meta tags with programmatic cascade (#23)
- Use meta tag names instead of field names in programmatic cascade
...and tons of bug fixes! ๐ (Take a look at early releases for a detailed summary)
This release was a ton of work and is available completely free of charge. If you use kirby-seo in a commercial project, I'd highly appreciate a sponsorship on GitHub (one-time available as well). If you need a commercial invoice or priority support, send me an email at seo@moeritz.io and we can figure things out.
Thanks to all contributors and everyone who created issues as well. @afbora, @JuKra00, @andrepimpao, @luxuryluke, @holmey
Full Changelog: https://github.com/tobimori/kirby-seo/compare/0.4.0...1.0.0
1.0.0-rc.7
Pre-release๐ Bug Fixes
- Programmatic meta tags are now tracked correctly and no longer output twice
- Robots check for
canonicalandalternatetags no longer causes an infinite loop (#83) - Sitemap title in XSL template is now escaped to support ampersands, thanks to @JuKra00 (#81 / #82)
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0-rc.6...1.0.0-rc.7
1.0.0-rc.6
Pre-release๐ Bug Fixes
$site->lang()now returns the config language in the correct format for the<html>tag (#77)canonicalandalternatetags are not output anymore if the page is set tonoindexor therobotsmodule is disabled- Section label of
heading-structurenow looks as expected
๐ Docs
- Schema.org usage is now documented (#70)
- Sitemap docs now hint to robots docs for whether a page is indexed or not (#68)
heading-structuresection is now documented
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0-rc.5...1.0.0-rc.6
1.0.0-rc.5
Pre-release๐ Bug Fixes
- Regex pattern used for accessing the page context programmatic blueprints now supports
-and_
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0-rc.4...1.0.0-rc.5
1.0.0-rc.4
Pre-release๐ Bug Fixes
$site->schema()now correctly uses thedefaultcontext and does not throw an error anymore
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0-rc.3...1.0.0-rc.4
1.0.0-rc.3
Pre-release๐ Features
kirby-seonow supportspt_PTlanguage, by @andrepimpao
๐ Bug Fixes
- Robots programmatic blueprint now uses a regex pattern for accessing the page context (#66)
- Avoid double assignment for
snippetData()by @holmey (#71)
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0-rc.2...1.0.0-rc.3
1.0.0-rc.2
Pre-release๐ Bug Fixes
- Alternate sitemap entries now correctly specify the locale in its
hreflangattribute (#67)
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0-rc.1...1.0.0-rc.2
1.0.0-rc.1
Pre-releaseThis release is the first release candidate for a stable release. If no issues are reported, a stable release is coming out in February 1st.
What's Changed
snippetData()resolving and handling of programmatic meta data fixed- Robots settings defaults look up fixed for draft pages (#60)
- Use named columns for blueprints for easier extensions (#65)
- Template strings are no longer escaped (#63)
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0-beta.3...1.0.0-rc.1
1.0.0-beta.3
Pre-releaseWhat's Changed
- fix: sitemap creation on multilang #61 by @JuKra00 in https://github.com/tobimori/kirby-seo/pull/62
New Contributors
- @JuKra00 made their first contribution in https://github.com/tobimori/kirby-seo/pull/62
Full Changelog: https://github.com/tobimori/kirby-seo/compare/1.0.0-beta.2...1.0.0-beta.3