novius/laravel-nova-page-manager

用于管理页面的Laravel Nova包。

6.1.0 2024-08-06 14:16 UTC

This package is auto-updated.

Last update: 2024-09-06 14:34:03 UTC


README

此包允许您使用自定义模板管理页面。

要求

  • PHP >= 8.2
  • Laravel >= 10.0
  • Laravel Nova >= 4.0

注意:以下说明适用于Laravel >= 10.0和PHP >= 8.2。如果您使用的是旧版本,请参阅旧版本文档

安装

composer require novius/laravel-nova-page-manager

注意:以下说明适用于Laravel Nova >= 4.0。如果您使用的是旧版本,请参阅旧版本文档

验证器翻译

请将此行添加到resource/lang/{locale}/validation.php(第一级)

// EN version : resource/lang/en/validation.php
'unique_page' => 'The field :attribute must be unique in this language.',

// FR version : resource/lang/fr/validation.php
'unique_page' => 'Le champ :attribute doit être unique dans cette langue.',

前端内容

如果您想生成预定义的前端控制器和路由,可以运行以下命令

php artisan page-manager:publish-front

此命令将路由添加到routes/web.php并创建一个新的App\Http\Controllers\FrontPageController

在页面模板中,使用laravel-meta的文档来实现元标签

配置

您可以选择覆盖的一些选项可用。

php artisan vendor:publish --provider="Novius\LaravelNovaPageManager\LaravelNovaPageManagerServiceProvider" --tag="config"

区域设置

您可以从配置文件中添加或删除任何区域设置。

例如,如果您想使用2种语言(FR和EN)

// ...

'locales' => [
    'en' => 'English',
    'fr' => 'French',
],

// ...

模板

要添加模板,只需将您的自定义类添加到配置文件的templates数组中。

您的类必须扩展Novius\LaravelNovaPageManager\Templates\AbstractPageTemplate

示例

config/laravel-nova-page-manager.php

// ...

'templates' => [
    \App\Nova\Templates\StandardTemplate::class,
],

app/Nova/Templates/StandardTemplate.php

<?php

namespace App\Nova\Templates;

use Laravel\Nova\Fields\Trix;
use Novius\LaravelNovaPageManager\Templates\AbstractPageTemplate;

class StandardTemplate extends AbstractPageTemplate
{
    public function templateName(): string
    {
        return trans('laravel-nova-page-manager::template.standard_template');
    }

    public function templateUniqueKey(): string
    {
        return 'standard';
    }

    public function fields(): array
    {
        return [
            Trix::make(trans('laravel-nova-page-manager::template.field_content'), 'content'),
        ];
    }
}

代码风格检查

使用以下方式运行php-cs

composer run-script lint

贡献

欢迎贡献!

在GitHub上提交问题,或创建一个Pull Request。

许可证

此包受GNU Affero通用公共许可证v3或(根据您的要求)任何后续版本的约束。