PHPackages                             s1syphos/kirby3-dejure - 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. [API Development](/categories/api)
4. /
5. s1syphos/kirby3-dejure

ActiveKirby-plugin[API Development](/categories/api)

s1syphos/kirby3-dejure
======================

Auto-linking legal norms to dejure.org for Kirby v3

1.4.4(4y ago)110MITPHP

Since Jun 22Pushed 4y ago1 watchersCompare

[ Source](https://github.com/S1SYPHOS/kirby3-dejure)[ Packagist](https://packagist.org/packages/s1syphos/kirby3-dejure)[ RSS](/packages/s1syphos-kirby3-dejure/feed)WikiDiscussions main Synced today

READMEChangelog (10)Dependencies (3)Versions (9)Used By (0)

Kirby3 Dejure
=============

[](#kirby3-dejure)

[![Release](https://camo.githubusercontent.com/082442fd23d734c2fc9672be42683f4a64e3570d4875a427905a5b1c6f436511/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f5331535950484f532f6b69726279332d64656a7572652e737667)](https://github.com/S1SYPHOS/kirby3-dejure/releases) [![License](https://camo.githubusercontent.com/604ff8e16d1d72b1d2961f5a9cb176eb6d35d9ffa57b0e1e37fb6024913fe6b8/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f5331535950484f532f6b69726279332d64656a7572652e737667)](https://github.com/S1SYPHOS/kirby3-dejure/blob/main/LICENSE) [![Issues](https://camo.githubusercontent.com/ccd929f706391cb67bc29e02939012b0da980b55cfc83e6e7da0784ba87727b4/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f5331535950484f532f6b69726279332d64656a7572652e737667)](https://github.com/S1SYPHOS/kirby3-dejure/issues)

This plugin automatically turns legal norms into links to their respective`dejure.org`.

Getting started
---------------

[](#getting-started)

Use one of the following methods to install &amp; use `kirby3-dejure`:

### Git submodule

[](#git-submodule)

If you know your way around Git, you can download this plugin as a [submodule](https://github.com/blog/2104-working-with-submodules):

```
git submodule add https://github.com/S1SYPHOS/kirby3-dejure.git site/plugins/kirby3-dejure

```

### Composer

[](#composer)

```
composer require s1syphos/kirby3-dejure

```

### Clone or download

[](#clone-or-download)

1. [Clone](https://github.com/S1SYPHOS/kirby3-dejure.git) or [download](https://github.com/S1SYPHOS/kirby3-dejure/archive/main.zip) this repository.
2. Unzip / Move the folder to `site/plugins`.

Configuration
-------------

[](#configuration)

You may change certain options from your `config.php` globally (`'kirby3-dejure.optionName'`):

OptionTypeDefaultDescription`'enabled'`bool`false`Enables `kirbytext:after` hook`'allowList'`array`[]`Allowed template names`'blockList'`array`[]`Blocked template names`'ignore'`string`''`Global file number ignore`'email'`string`''`Contact mail`'buzer'`bool`false`Fallback linking to 'buzer.de'`'class'`string`''`Controls `class` attribute`'lineBreak'`string`'auto'`Controls links across line breaks. Possible values: `'ohne'`, `'mit'`, `'auto'``'linkStyle'`string`'weit'`Controls link range. Possible values: `'weit'`, `'schmal'``'target'`string`'_blank'`Controls `target` attribute`'tooltip'`string`'beschreibend'`Controls `title` attribute. Possible values: `'ohne'`, `'neutral'`, `'beschreibend'`, `'Gesetze'`, `'halb'`'`driver`'string`'file'`For all cache drivers, see [here](https://github.com/terrylinooo/simple-cache)'`caching`'array`[]`For all config options, see [here](https://github.com/terrylinooo/simple-cache)`'cacheDuration'`int`2`Cache duration (days)`'streamTimeout'`int`10`Response stream timeout (seconds)`'timeout'`int`3`Request timeout (seconds)`'userAgent'`string`null`Controls `User-Agent` headerWhen enabling the plugin via `kirby3-dejure.enabled`, auto-linking is applied to all `kirbytext()` / `kt()` calls, with two exceptions:

1. If a page's `intendedTemplate()` name is allow(list)ed, this overrides `kirby3-dejure.enabled` being `false`
2. If a page's `intendedTemplate()` name is block(list)ed, this overrides `kirby3-dejure.enabled` being `true`

Besides that, there are additional methods you can use:

Methods
-------

[](#methods)

There are several ways to do this, you can either use a standalone function, a page method or a field method:

### Method: `dejurify(string $text, string $ignore = ''): string`

[](#method-dejurifystring-text-string-ignore---string)

Processes linkable citations &amp; caches text (if uncached or expired)

### Method: `clearDJO(): bool`

[](#method-cleardjo-bool)

Clears DJO cache

### Page method: `$page->dejurify(string $text, string $ignore = '')`

[](#page-method-page-dejurifystring-text-string-ignore--)

Same as `dejurify`

### Field method: `$field->dejurify(string $text, string $ignore = '', bool $useKirbytext = true)`

[](#field-method-field-dejurifystring-text-string-ignore---bool-usekirbytext--true)

Same as `dejurify`, but supports applying `kirbytext()` out-of-the-box via its third parameter `$useKirbytext`.

Roadmap
-------

[](#roadmap)

- Add tests
- Cache entries per-site (?)

Credits / License
-----------------

[](#credits--license)

`kirby3-dejure` is based on [`php-dejure`](https://github.com/S1SYPHOS/php-dejure) library (an OOP port of `vernetzungsfunction.inc.php`, which can be [downloaded here](https://dejure.org/vernetzung.html). It is licensed under the [MIT License](LICENSE), but **using Kirby in production** requires you to [buy a license](https://getkirby.com/buy).

Special Thanks
--------------

[](#special-thanks)

I'd like to thank everybody that's making great software - you people are awesome. Also I'm always thankful for feedback and bug reports :)

###  Health Score

25

—

LowBetter than 35% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~17 days

Recently: every ~30 days

Total

8

Last Release

1711d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5933072731cd628e1ef2bdc59bc81da16dac859145a3be2dc5c83aab9095179b?d=identicon)[S1SYPHOS](/maintainers/S1SYPHOS)

---

Top Contributors

[![S1SYPHOS](https://avatars.githubusercontent.com/u/12161504?v=4)](https://github.com/S1SYPHOS "S1SYPHOS (15 commits)")

---

Tags

apikirbykirby-pluginlegalkirby3getkirbydejuredejure.org

###  Code Quality

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/s1syphos-kirby3-dejure/health.svg)

```
[![Health](https://phpackages.com/badges/s1syphos-kirby3-dejure/health.svg)](https://phpackages.com/packages/s1syphos-kirby3-dejure)
```

###  Alternatives

[getkirby/cms

The Kirby core

1.5k584.8k472](/packages/getkirby-cms)[getkirby/kql

Kirby Query Language

15027.0k](/packages/getkirby-kql)[medienbaecker/kirby-modules

Easily add modules to your pages

895.5k1](/packages/medienbaecker-kirby-modules)[beebmx/kirby-courier

Courier offers a convenient and painless solution for creating emails tailored for your Kirby website.

403.8k3](/packages/beebmx-kirby-courier)[grommasdietz/kirby-blueprint-areas

Add custom Panel areas via blueprints on Kirby CMS

211.2k](/packages/grommasdietz-kirby-blueprint-areas)[beebmx/kirby-db

Enable database support for Illuminate\\Database in Kirby

192.7k](/packages/beebmx-kirby-db)

PHPackages © 2026

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