Manages Kirby multi-language workflows, translations, and localized labels. Use when dealing with languages, translation keys, placeholders, or importing/exporting translations.
Scanned 2/12/2026
Install via CLI
openskills install majiayu000/claude-skill-registry---
name: kirby-i18n-workflows
description: Manages Kirby multi-language workflows, translations, and localized labels. Use when dealing with languages, translation keys, placeholders, or importing/exporting translations.
---
# Kirby i18n Workflows
## KB entry points
- `kirby://kb/scenarios/46-i18n-field-options-and-labels`
- `kirby://kb/scenarios/47-i18n-find-translation-keys`
- `kirby://kb/scenarios/48-i18n-import-export-translations`
- `kirby://kb/scenarios/72-filter-by-language`
- `kirby://kb/scenarios/73-language-variables-and-placeholders`
## Required inputs
- Enabled languages and default language.
- Where translation keys live and desired naming scheme.
- Which content is translated vs label-only.
## Default translation rule
- Use `t('key', 'fallback')` in templates and snippets.
- Keep stored content language-neutral when possible; translate labels at render time.
- Maintain fallback strings in the default language file.
## Import/export hint
```php
return [
'site.title' => 'Example',
];
```
## Missing key audit
- Run `rg -F 't(' site` and compare keys with `site/languages/*.php`.
- Add missing keys to the default language file first.
## Common pitfalls
- Storing translated labels in content instead of language files.
- Using translation keys without fallback strings.
## Workflow
1. Confirm language setup with `kirby://config/languages` and locate language files via `kirby://roots`.
2. Inspect templates/snippets/controllers for translation usage; use `rg` to find `t(` calls if needed.
3. Search the KB with `kirby:kirby_search` (examples: "translate field options", "find translation keys", "import export translations", "language variables placeholders").
4. Update language files (`site/languages/*.php`) or config maps for option labels.
5. Ensure templates render translated labels (not stored keys) and use fallbacks.
6. Verify by rendering representative pages in each language (`kirby:kirby_render_page`).
No comments yet. Be the first to comment!