webid/cms-nova

该包最新版本(dev-main)没有提供许可证信息。

Laravel Nova 的 CMS

dev-main 2023-11-22 14:43 UTC

This package is auto-updated.

Last update: 2024-09-11 11:48:00 UTC


README

MIT Licence Logo

目录

要求

  • PHP >= 8.2
  • Laravel >= 9
  • Nova >= 4
  • Composer 2
  • MariaDB / MySQL

安装

1. 安装包

此包可以作为 Composer 依赖项安装。

"repositories": [
    {
        "type": "vcs",
        "url" : "git@github.com:web-id-fr/cms-nova.git"
    }
]
composer require webid/cms-nova

2. 发布文件

情况 1:首次安装

php artisan vendor:publish --provider="Webid\CmsNova\CmsServiceProvider" --force

情况 2:第二次安装(或之后)

php artisan vendor:publish --provider="Webid\CmsNova\CmsServiceProvider"

3. 安装数据库

make install_db

4. 在 composer 中添加 nova-components

"extra": {
    "laravel": {
        "dont-discover": [],
        "providers": [
            "Webid\\ComponentTool\\ToolServiceProvider"
        ]
    }
}
"autoload": {
    "psr-4": {
        "Webid\\ComponentTool\\" : "nova-components/ComponentTool/src/"
    },
},
"require": {
    "webid/component-item-field": "*",
},

"repositories": [
    {
        "type": "path",
        "url": "./nova-components/ComponentItemField"
    }
]

然后运行 composer update

5. 准备路由

您必须从 routes/web.php 文件中删除所有路由,以确保 CMS 正常工作。

如果项目是新的 Laravel 项目,您可能有一些要删除的生成代码,如下所示

Route::get('/', function () {
    return view('welcome');
});

6. 链接存储文件

运行命令 php artisan storage:link

7. 配置 sitemap.xml

如果您希望允许机器人访问您的 sitemap,请在 robots.txt 文件中添加此行

Sitemap: https://www.your-domain.com/sitemap.xml

⚠ 将 www.your-domain.com 替换为您实际的网站域名。

#f03c15 ⚠ ⚠ 不要删除 nova-components 中的现有代码 !!! ⚠ ⚠ #f03c15

定制

禁用机器人跟踪

要禁用机器人跟踪,必须在 .env 中添加 DISABLE_ROBOTS_FOLLOW=true

使用表单

js

不要修改文件 send_form.js!使用带有表单前端信息的 helper.js 文件来显示错误和成功消息。添加到 package.json

"dropzone": "^5.7.0",
"lang.js": "^1.1.14"

webpack.mix 文件中,添加 send_form_js 文件。该文件已在前端中链接。

前端

您可以更改表单前端,但不要触碰用于发送表单的 submit_form 类。

国际化

不要忘记创建一个服务来显示所需的语言。将此服务用于 ViewServiceProvider,以在视图中共享语言和翻译的别名。

要创建服务提供程序,可以运行

php artisan make:provider ViewServiceProvider

⚠ 不要忘记将服务提供程序添加到文件 config/app.php

更新电子邮件模板

resources/views/mail/form.blade.php 中的电子邮件模板

您可以更改邮件模板的设计,但不要删除或修改现有代码!现有代码允许您在电子邮件中显示发送的表单字段。

为组件添加图片

public/cms/images/components/gallery_component.png
public/cms/images/components/newsletter_component.png

扩展功能

创建新组件

1. 创建模型、迁移、仓库、Nova和资源用于新组件(在Components文件夹中注册所有元素)
2. 更新config\component.php文件,包含新组件的信息,并在public/components/中添加组件图片
3. 更新App\Models\Template,包含新组件的信息
4. 更新Services\ComponentsService.php,包含新组件的信息
5. 更新nova-components\ComponentField,包含新组件的信息

模块

模块表单

1. 在你的.env文件中添加SEND_EMAIL_CONFIRMATION键,以确定是否发送确认邮件