🚀 A new era: Kirby 4 Get to know
Skip to content

Env

\Beebmx\KirbyEnv::load('main/path');

return [
    'debug'  => env('KIRBY_DEBUG', false),
    'secret' => env('SECRET_KEY'),
    'public' => env('PUBLIC_KEY'),
];

Store project credentials and variables in a .env file and access them in Kirby

Related plugins

return [
    'afbora.loader.roots' => [
        '/plugins/core',
        '/plugins/payment',
        '/plugins/shipping',
    ]
];

Plugin Loader

by Ahmet Bora

With Kirby Loader you can load plugins from multiple roots. Thus, you can simplify the management of your plugins by grouping.
  • K3
  • K4
// hook
'page.product.update:after' => function () {
    // your code goes here
}

Template hooks

by Ahmet Bora

Template hooks allow you to manage hooks for page and file templates more easily.
  • K3
  • K4
use Beebmx\KirbyDB\DB;

DB::table('users')->get();

Illuminate Database

by Fernando Gutiérrez

Use Laravel's illuminate/database package in Kirby
  • K3
  • K4
monolog()->info('test-' . time()), [
    'title' => $page->title(),
    'page'  => $page->id()
]);

Monolog

by Bruno Meilick

Use Monolog to log data to files, databases, notifications and more.
  • K3
  • K4
plop blueprint $ pages blogpost
plop template $ blogpost
plop content "Nice!" blog blogpost
plop content _ blog blogpost
plop snippet $ slideshow

Plopfile

by Bruno Meilick

CLI tool to generate and append to various files for Kirby3 CMS using Plop.js
  • K3
  • K4
sections:
  redirects:
    extends: plugin-redirects3xx

Redirects

by Bruno Meilick

Setup HTTP status code redirects from within the Panel
  • K3
  • K4
$site->log('My message', 'error');

Log

by Bart Vandeputte

A little log utility (KLogger wrapper)
  • K3
  • K4
$queue = kqQueue('queuename');
$job   = kqJob([
    'foo' => 'foo',
    'bar' => 'bar'
]);

$queue->addJob($job);

Queue

by Bart Vandeputte

Enable workers in Kirby that can do tasks in the background at scheduled intervals (cron) by working through queues of jobs
  • K3
  • K4
'en' => [
    [
        'id'      => 'some-uuid',
        'slug'    => 'slug-in-english',
        'content' => [...]
    ]
]

Virtual pages helper kit

by Bart Vandeputte

Opinionated boilerplate helper to make it easier to work with virtual pages in a multilingual kirby 3 setup.
  • K3

Ray

by Sam Serrien

Helper tool that enables ray ( https://myray.app/) on all extendable methods.
  • K3
  • K4
- kirby install
- kirby install:kit
- kirby install:repo
- kirby make:blueprint
- kirby make:collection
- kirby make:command

CLI

by Kirby Team

The Kirby command line interface helps to simplify common tasks with your Kirby installations.
  • K3
  • K4
site
â”” methods
  â”” file.php
  â”” page.php
  â”” site.php
  â”” user.php

Methods Folder

by hana+nils

Methods Folder is a plugin to automatically register local methods provided in the folder site/methods just like Kirby accepts local …
  • K3
  • K4
<?php foreach ($notifications as $notification): ?>
  <li>
    <?= $notification
      ->track()
      ->toReference()
      ->title() ?>
  </li>
<?php endforeach ?>

Tracker

by hana+nils

Tracker is a plugin to track content changes and create panel logs or front-end notifications in member areas.
  • K3

Kirbylog

by Johann Schopplich

Zero-dependency global kirbylog() helper for any content
  • K3
  • K4
user@host:~/project$ kirby types:create
kirby-types v1.1.0 types:create
✓ added blueprints fields
✓ added custom methods
✓ added decorators
✓ added aliases
types helper created successfully

Types

by Lukas Kleinschmidt

IDE Helper for Kirby. Adds the kirby types:create command to your project to create an additional type hints file.
  • K3
  • K4

Logger

by Michael Engel

Gain deeper insights into your Kirby website's behavior with the powerful Logger.
  • K3
  • K4
'maintenance' => true

Maintenance Mode

by Moritz Ebeling

Switch your website to maintenance mode and it will only be visible to logged in users.
  • K3
  • K4

MarkdownPlus

by Dieter Stokar

A small set of syntax extensions greatly expand expressiveness of Markdown. Helps where you'd need complex templates. See dedicated Doc …
  • K3
  • K4
monolog()->log('something CRITICAL happend 😱', 'critical');

Monolog

by Present Progressive

Have you ever missed an error message and were clueless about what was going on? Never again: Use Monolog to log your messages to a myriad …
  • K3
  • K4
// site/routes/my-awesome-route.php
use PresProg\RouteAttributes\Attributes\Get;

return #[Get('/hello')] function () {
    return '<h1>Hello world!</h1>';
};

Route Attributes

by Present Progressive

Use PHP8 attributes to define metadata for your custom routes in separate files.
  • K3
  • K4
class MigrationTest extends Migration
{
    public function up()
    {
        $result = Db::query(
            'ALTER TABLE `my_table`
            ADD COLUMN `test` INT DEFAULT NULL;
        ');

        if (!$result) throw Db::lastError();
    }
}

Migrations

by Markus Denhoff

Migrations management (eg. for Databases)
  • K3

Sentry

by Markus Denhoff

Sentry real-time crash reporting for Kirby CMS sites
  • K3
  • K4

Debug Bar

by Vincent Riva

PHP Debug Bar for KirbyCMS
  • K3
  • K4

Contentsync

by Zephir Software Design AG

Tired of manual and cumbersome methods like git push/pull, scp, rsync or sftp to synchronize content between your server and local …
  • K3
  • K4

Other plugins by Fernando Gutiérrez