junohamburg/kirby-reload-on-save

Kirby Reload On Save

1.0.3 2024-02-08 15:32 UTC

This package is auto-updated.

Last update: 2024-09-08 16:57:15 UTC


README

此插件用于Kirby 3和Kirby 4,在面板中保存内容更改时自动重新加载前端。

它使用广播频道API在面板和前端之间进行通信。无需构建工具或npm install,因此该插件可以在您的本地开发和生产环境中使用。

preview.mp4

点击“保存”或使用CMD+S / CTRL+S来保存内容并重新加载前端。

安装

下载

下载并将此仓库复制到/site/plugins/kirby-reload-on-save

Composer

composer require junohamburg/kirby-reload-on-save

Git子模块

git submodule add https://github.com/junohamburg/kirby-reload-on-save.git site/plugins/kirby-reload-on-save

设置

使用以下ready 选项在您的配置中启用插件。这样,插件仅在用户登录时才激活,并且不会干扰Kirby缓存。

site/config/config.php

<?php

return [
  'ready' => function ($kirby) {
    return [
      'junohamburg.reload-on-save' => [
        'active' => $kirby->user() !== null
      ]
    ];
  }
];

提示:如果您只想在本地开发环境中启用插件,请使用特定于域名/环境的配置文件:Kirby文档

工作原理

插件使用广播频道API在选项卡之间进行通信:在面板中添加一个广播频道,在前面端使用page.render:after钩子添加另一个。当用户在面板中保存内容更改时,面板中的广播频道会向前端发送消息以重新加载页面。

限制

  1. 此插件将重新加载前端中打开的任何页面。它不会区分在面板中保存的是哪个页面(或文件或用户)——只有页面属于同一站点。
  2. 上传文件、添加新页面、更改页面标题或其他不会在面板中触发content/save操作的行为不会自动重新加载前端。
  3. 广播频道API由任何现代浏览器支持,除了Safari 15.3和更早版本:Can I Use

许可证

MIT

鸣谢