Kirby field that allows you to manage langauge variables via the panel. To do that, it uses kirby-variables to put those variables in YAML files so they're easy to work with.
You gain very little by putting variables in separate files and managing them differently to other fields. It's much easier to just use text fields. For details, check the deprecated oblik/kirby-variables package.
With Composer:
composer require oblik/kirby-variables-field
In a blueprint, simply add a new field and set its type to variables:
fields:
vars:
type: variables
label: VariablesThis will create an editor for all variables where you can add, remove, and sort them.
Note: This is a "fake" field and no actual value will be saved in the site/page txt file. All values are saved in the YAML files where the variables reside so it doesn't matter what field name you choose.
You can specify exactly which variable you want to be editable. For example, if you have this in bg.yml:
test: Тест
greetings:
hello: Здравей...and this in your blueprint:
myfield:
type: variables
variable: greetings.hello
label: Hello...you'll get the following result:
In the case above, if you want editors to be able to add new entries in the greetings group, you can simply change:
variable: greetings.hello...to:
variable: greetingsThis will show the variable editor instead.
When you haven't set a specific variable to edit and the editor is shown, you can configure it:
myfield:
type: variables
editor:
sort: false
mutate: falseThis plugin uses the JSON editor Vue component provided by the kirby-json dependency. Read what blueprint options it has here.
This plugin also comes with a KirbyTag called var. It simply outputs a variable with a fallback default value. For example, in en.yml:
labels:
test: TestIn your content:
This is the label (var: labels.test default: Default Value)
Result:
This is the label Test
This is useful because editors now can both set and use variables in the panel, which gives them the option to avoid repeating themselves in the content.

