neon / site
Neon CMS 网站处理器。
3.0.0-alpha-10
2024-09-12 14:57 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^10.0
- laravel/framework: ^10.0
- neon/attributable: *
- neon/model-uuid: ^1.0
- spatie/laravel-package-tools: ^1.14.0
- dev-main
- 3.0.0-alpha-10
- 3.0.0-alpha-9
- 3.0.0-alpha-8
- 3.0.0-alpha-7
- 3.0.0-alpha-6
- 3.0.0-alpha-5
- 3.0.0-alpha-4
- 3.0.0-alpha-3
- 3.0.0-alpha-2
- 3.0.0-alpha-1
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.0.13
- 1.0.12
- 1.0.11
- 1.0.10
- 1.0.9
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.4
- 1.0.1
- dev-NEON-53-Coming-back-with-the-simplifications
- dev-develop
- dev-hotfix/migrations-prefix
This package is auto-updated.
Last update: 2024-09-12 15:00:13 UTC
README
处理可在其上运行的网站。
要求
"neon/model-uuid": "^1.0"
安装
轻松安装 composer 包
composer require neon/site
然后有两种使用网站的方式:您可以将设置存储在配置文件或数据库中。这取决于您的意愿,您可以选择两种方式之一安装包。
安装配置文件
安装数据库迁移
然后您应该通过以下方式安装数据库迁移
php artisan vendor:publish --provider=\"Neon\\Site\\NeonSiteServiceProvider\"
用法
从 2.0 版本开始,Site 中间件不会自动添加到中间件数组中,因此,如果您想使用它,您应该为路由设置它
use Neon\Site\Facades\Site; Site::patterns();
此命令将为 Laravel 的路由器定义网站规则。定义之后,您可以根据不同的情况使用它
use Neon\Site\Facades\Site; use Neon\Site\Http\Middleware\SiteMiddleware; Route::group([ 'domain' => Site::domain('domain_slug'), 'middleware' => SiteMiddleware::class ], function () { Route::group([ 'middleware' => [SiteMiddleware::class] ], function () { Route::get('/', function() { echo 'Hello '.app('site')->current()->locale.' /// DOMAIN'; }); }); });
如果您想按区域分离路由,可以使用如下方式
'prefix' => 'en',
您也可以使用网站作为前缀
use Neon\Site\Facades\Site; use Neon\Site\Http\Middleware\SiteMiddleware; Route::group([ 'prefix' => Site::prefix('prefix_slug'), 'middleware' => SiteMiddleware::class ], function () { ... });
SEO 功能
使用 Favicon
Favicon 可以在管理界面中设置。之后,您可以将它轻松地放在标题标签 <title>
之后
<head> <title>...</title> <x-neon-favicon/> ... </head>
网站依赖模型
如果您需要与网站相关的某些内容,例如菜单,那么您只需使用依赖特性即可。
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; use Neon\Attributable\Models\Traits\Attributable; //- You cab check this too... use Neon\Models\Traits\Uuid; use Neon\Site\Models\Traits\SiteDependencies; class AwesomeModel extends Model { use Attributable; use Uuid; use SiteDependencies; ... }
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件