Aloia — Laravel 9 的扁平文件 CMS
发表于 作者: Paul Redmond
Aloia CMS 是 Laravel 的一个扁平文件内容管理系统。您无需重建整个应用程序即可提供 CMS 功能,并且可以在现有应用程序中包含 Aloia。
Aloia 提供以下开箱即用的内容类型,您可以在 Markdown 或 HTML 中以扁平文件形式管理这些内容类型。
- 页面
- 文章
- 内容块
- 元标签
以文章内容类型为例,演示如何与这些扁平文件模型进行交互
use AloiaCms\Models\Article;use Illuminate\Support\Collection; // Get a collection of Article[]|Collection$articles = Article::all(); // Find an article$article = Article::find('this-post-is-amazing');
以及更新文章的更高级示例,这将更新所选格式的扁平文件
use Carbon\Carbon; Article::find('this-post-is-amazing') // md is the default, but you can use html as well. ->setExtension('md') ->setMatter([ 'description' => 'This post is about beautiful things', 'is_published' => true, 'is_sechduled' => false, // Either use post_date in setMatter() or setPostDate() 'post_date' => date('Y-m-d') ]) ->setPostDate(Carbon::now()) ->setBody('# This is the content of an article') ->save();
内容块是另一种有趣的内容类型,因为它允许您创建部分内容块并在 blade 文件中渲染它们。例如,给定以下 Markdown 中的内容块
## Title of the content This is a paragraph
内容块可以被编辑,然后在 Blade 文件中渲染
{!! Block::get('test') !!}
这将渲染以下输出
<h2>Title of the content</h2> <p>This is a paragraph</p>
您还可以创建 [自定义内容类型 创建内容类型 并像其他任何内置内容类型一样与它们交互。
了解更多
查看 Aloia CMS 文档 来安装此软件包并了解如何使用它。您可以在 GitHub 上了解有关此软件包的更多信息,获得完整的安装说明,并查看 源代码。