PHPackages                             bvdputte/kirby-autopublish - 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. bvdputte/kirby-autopublish

ActiveKirby-plugin

bvdputte/kirby-autopublish
==========================

Kirby plugin to schedule the automatic publishing of pages on a certain date+time. It is built to work with enabled cache.

3.0.0(2y ago)348.2k↓36%6[1 PRs](https://github.com/bvdputte/kirby-autopublish/pulls)MITPHP

Since Apr 12Pushed 2y ago5 watchersCompare

[ Source](https://github.com/bvdputte/kirby-autopublish)[ Packagist](https://packagist.org/packages/bvdputte/kirby-autopublish)[ RSS](/packages/bvdputte-kirby-autopublish/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (5)Dependencies (1)Versions (5)Used By (0)

Kirby autopublish plugin
========================

[](#kirby-autopublish-plugin)

Kirby plugin to schedule the automatic publishing of pages (drafts) / unpublishing of pages (listed) on a certain date+time. It is built to work with enabled cache.

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

[](#installation)

- unzip [master.zip](https://github.com/bvdputte/kirby-autopublish/archive/master.zip) as folder `site/plugins/kirby-autopublish` or
- `git submodule add https://github.com/bvdputte/kirby-autopublish.git site/plugins/kirby-autopublish` or
- `composer require bvdputte/kirby-autopublish`

⚠️ Highly recommended to also install the [kirby-log plugin](https://github.com/bvdputte/kirby-log), to get page-publication logs.

Usage
-----

[](#usage)

1. autopublish changes the status of a given page to `listed` on a given time
2. autounpublish changes the status of a given page to `draft` on a given time

### Setup worker

[](#setup-worker)

#### 1. Via Cron

[](#1-via-cron)

Add the worker file `site/plugins/kirby-autopublish/worker.php` to [cron](https://en.wikipedia.org/wiki/Cron) or similar at the desired interval (.e.g. each minute).

💡 This is the preferred method for setting up kirby-autopublish. ⚠️ There is a [demo worker file](https://github.com/bvdputte/kirby-autopublish/blob/master/worker.php) included in the plugin that should work with the Kirby default folder setup. In case you use a [custom folder setup](https://getkirby.com/docs/guide/configuration#custom-folder-setup), please copy the worker an adjust the paths to match your installation.

#### 2. Poor man's cron

[](#2-poor-mans-cron)

When cron is not installed on your server, you can *fake* cron by [enabling this](#options-and-opinionated-defaults) in `config.php`.

### Setup field in blueprint

[](#setup-field-in-blueprint)

```
autopublish:
  label: Autopublish on
  type: date
  time: true
  default: now
autounpublish:
  label: Automatically unpublish on
  type: date
  time: true
```

Options and opinionated defaults
--------------------------------

[](#options-and-opinionated-defaults)

Set in `config.php`:

### Field name

[](#field-name)

Autopublish searches for a date-field. By default the name is `autopublish` and `autounpublish`, but can be changed:

```
'fieldName' => 'myautopublishfieldname',
'fieldNameUnpublish' => 'myAutoUnpublishFieldName'
```

### Poor man's cron

[](#poor-mans-cron)

By default, this is disabled. Enable:

```
// Enable poor man's cron
'bvdputte.autopublish.poormanscron' => true
```

The default interval for poor man's cron to check is each minute. Change this to e.g. quarterly:

```
'bvdputte.autopublish.poormanscron.interval' => 15
```

### Webhook

[](#webhook)

You can also configure autopublish to run via a webhook:

```
'bvdputte.autopublish.webhookToken' => 'my-secret-token'
```

Now you can trigger the autopublish check via `https://mydomain.com/kirby-autopublish/my-secret-token`.

Disclaimer
----------

[](#disclaimer)

This plugin is provided "as is" with no guarantee. Use it at your own risk and always test it yourself before using it in a production environment. If you find any issues, please [create a new issue](https://github.com/bvdputte/kirby-autopublish/issues/new).

License
-------

[](#license)

[MIT](https://opensource.org/licenses/MIT)

It is discouraged to use this plugin in any project that promotes racism, sexism, homophobia, animal abuse, violence or any other form of hate speech.

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity36

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 76.2% 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 ~565 days

Total

4

Last Release

897d ago

Major Versions

v1.0 → v2.02021-10-28

2.0.1 → 3.0.02023-12-03

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/490505?v=4)[Bart Vandeputte](/maintainers/bvdputte)[@bvdputte](https://github.com/bvdputte)

---

Top Contributors

[![bvdputte](https://avatars.githubusercontent.com/u/490505?v=4)](https://github.com/bvdputte "bvdputte (16 commits)")[![verkruemelt](https://avatars.githubusercontent.com/u/1926264?v=4)](https://github.com/verkruemelt "verkruemelt (2 commits)")[![dennisbaum](https://avatars.githubusercontent.com/u/562826?v=4)](https://github.com/dennisbaum "dennisbaum (1 commits)")[![mauricerenck](https://avatars.githubusercontent.com/u/964547?v=4)](https://github.com/mauricerenck "mauricerenck (1 commits)")[![sylvainjule](https://avatars.githubusercontent.com/u/14079751?v=4)](https://github.com/sylvainjule "sylvainjule (1 commits)")

---

Tags

schedulepublishTaskskirby3kirby4background taskskirby3-pluginautopublishkirby4-plugin

### Embed Badge

![Health badge](/badges/bvdputte-kirby-autopublish/health.svg)

```
[![Health](https://phpackages.com/badges/bvdputte-kirby-autopublish/health.svg)](https://phpackages.com/packages/bvdputte-kirby-autopublish)
```

###  Alternatives

[bvdputte/kirby-queue

A simple queue utility plugin for Kirby 3. It enables workers in Kirby that can do tasks (in the background) at scheduled intervals (cron) by working through queues of jobs.

314.6k](/packages/bvdputte-kirby-queue)[bvdputte/kirby-bettersearch

A search plugin for Kirby (v3+ that searches for full word combinations rather than just individual words.

233.5k](/packages/bvdputte-kirby-bettersearch)[arnoson/kirby-vite

Vite helper for Kirby CMS

9759.2k3](/packages/arnoson-kirby-vite)[fabianmichael/kirby-meta

Your all-in-one powerhouse for any SEO and metadata needs imaginable.

6910.7k1](/packages/fabianmichael-kirby-meta)[wagnerwagner/merx

A toolkit to create online shops with Kirby

1152.7k](/packages/wagnerwagner-merx)[afbora/kirby-minify-html

Enable minify HTML output for Kirby

3816.0k1](/packages/afbora-kirby-minify-html)

PHPackages © 2026

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