bigfork/silverstripe-fail-whale

SilverStripe 错误页面,但没有页面。

安装次数: 15,895

依赖者: 1

建议者: 1

安全: 0

星标: 8

关注者: 5

分支: 1

公开问题: 0

类型:silverstripe-vendormodule

2.0.0 2023-03-08 15:01 UTC

This package is auto-updated.

Last update: 2024-09-08 18:17:52 UTC


README

SilverStripe 错误页面,但没有页面。

这是什么?

可由CMS编辑的错误页面(404、500等),不会占用网站树结构,也不会让不经常(如果有的话)编辑这些页面的内容作者感到困惑。即使没有安装CMS模块也能使用。

它如何工作?

错误文档是可以通过CMS的“设置”区域进行编辑的数据对象。没有版本控制或草稿/实时阶段,所以所有更改都会立即发布。遇到错误时,SilverStripe会寻找匹配的错误文档并在找到后渲染它。

缓存内容仍然存储在 assets/error-<code>.html 文件中,如果需要,仍然可以使用自定义模板。

当安装CMS模块时,在渲染错误文档之前会调用 PageController::init(),以确保包含所有必要的要求。如果在错误发生时需要在此方法中实现不同的行为,可以检查 if ($this->data()->ClassName === ErrorDocument::class)

如何使用自定义模板?

例如,在404错误的情况下,该模块将寻找以下模板

  • <theme>/templates/Bigfork/SilverStripeFailWhale/Model/Layout/ErrorDocument_404.ss
  • <theme>/templates/Bigfork/SilverStripeFailWhale/Model/Layout/ErrorDocument.ss
  • <theme>/templates/Bigfork/SilverStripeFailWhale/Model/ErrorDocument.ss

如果以上模板都不存在,并且已安装CMS模块,则模块将回退到使用默认的 Page 模板。

这个名字的由来是什么?

“Fail Whale” 是由澳大利亚艺术家 Yiying Lu 绘制的白色白鲸插图,最初被命名为 “Lifting a Dreamer”,它被社交媒体服务Twitter在服务中断期间使用。

http://www.whatisfailwhale.info/

感谢 @andrewandante 提出建议!