PHPackages                             oblik/kirby-variables-field - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Localization &amp; i18n](/categories/localization)
4. /
5. oblik/kirby-variables-field

Abandoned → [bnomei/autoloader-for-kirby](/?search=bnomei%2Fautoloader-for-kirby)ArchivedKirby-plugin[Localization &amp; i18n](/categories/localization)

oblik/kirby-variables-field
===========================

Panel field that allows you to change language variables.

1.2.0(6y ago)9537MITPHP

Since Apr 30Pushed 3y ago3 watchersCompare

[ Source](https://github.com/OblikStudio/kirby-variables-field)[ Packagist](https://packagist.org/packages/oblik/kirby-variables-field)[ RSS](/packages/oblik-kirby-variables-field/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (3)Versions (4)Used By (0)

kirby-variables-field
=====================

[](#kirby-variables-field)

Kirby field that allows you to manage langauge variables via the panel. To do that, it uses [kirby-variables](https://github.com/OblikStudio/kirby-variables) to put those variables in YAML files so they're easy to work with.

[![Variables editor](editor.png)](editor.png)

⚠ Deprecated
------------

[](#-deprecated)

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](https://github.com/OblikStudio/kirby-variables#-deprecated) package.

Installation
------------

[](#installation)

With [Composer](https://packagist.org/packages/oblik/kirby-variables-field):

```
composer require oblik/kirby-variables-field

```

Usage
-----

[](#usage)

In a blueprint, simply add a new field and set its type to `variables`:

```
fields:
  vars:
    type: variables
    label: Variables
```

This 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.

Options
-------

[](#options)

### `variable`

[](#variable)

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:

[![Single variable field](field.png)](field.png)

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: greetings
```

This will show the variable editor instead.

### `editor`

[](#editor)

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: false
```

This plugin uses the JSON editor Vue component provided by the [kirby-json](https://github.com/OblikStudio/kirby-json) dependency. Read what blueprint options it has [here](https://github.com/OblikStudio/kirby-json#field).

KirbyTag
--------

[](#kirbytag)

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: Test
```

In 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.

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity18

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity61

Established project with proven stability

 Bus Factor1

Top contributor holds 88.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~62 days

Total

3

Last Release

2444d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/078077710a1481f0419521ab1e1d3e5f93723aadd56148937ee3e355b93acb2e?d=identicon)[hdodov](/maintainers/hdodov)

---

Top Contributors

[![yandodov](https://avatars.githubusercontent.com/u/5570098?v=4)](https://github.com/yandodov "yandodov (31 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (4 commits)")

### Embed Badge

![Health badge](/badges/oblik-kirby-variables-field/health.svg)

```
[![Health](https://phpackages.com/badges/oblik-kirby-variables-field/health.svg)](https://phpackages.com/packages/oblik-kirby-variables-field)
```

###  Alternatives

[symfony/translation

Provides tools to internationalize your application

6.6k836.5M2.1k](/packages/symfony-translation)[illuminate/translation

The Illuminate Translation package.

6936.4M495](/packages/illuminate-translation)[junohamburg/kirby-language-selector

Kirby Language Selector

598.7k1](/packages/junohamburg-kirby-language-selector)[johannschopplich/kirby-content-translator

DeepL &amp; AI-powered content translation for Kirby CMS

208.1k](/packages/johannschopplich-kirby-content-translator)[mullema/k3-panel-view-extended

Allow single language pages/site/users in a multi language setup, hide buttons in topbar and sections.

288.2k1](/packages/mullema-k3-panel-view-extended)[sietseveenman/kirby3-language-sync

Synchronize page content from one language to another

163.8k](/packages/sietseveenman-kirby3-language-sync)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
