the-3labs-team/nova-redirector-seo
Composer 安装命令:
composer require the-3labs-team/nova-redirector-seo
包简介
Redirector SEO for Laravel Nova
README 文档
README
NovaRedirectorSEO is a all-in-one SEO package for Laravel Nova. It provides a simple way to manage your SEO redirects.
Why choose NovaRedirectorSEO?
- Pre-configured Laravel Nova resource, you need only to install, register and configure the package.
- Middleware to handle redirects, you can use it in your routes or in your controllers.
- Cache support, based on your configuration, the package will cache the redirects. Also, it flush caches when you create, update or delete a redirect.
- Regex support, you can use regex in your redirects.
Installation
You can install the package via composer:
composer require the-3labs-team/nova-redirector-seo
You can publish and run the migrations with:
php artisan vendor:publish --tag="nova-redirector-seo-migrations"
php artisan migrate
You can publish the config file with:
php artisan vendor:publish --tag="nova-redirector-seo-config"
This is the contents of the published config file:
return [ 'cache' => [ 'ttl' => 60 * 60 * 24 * 7, // 7 days ], ];
It will use the default cache driver configured in your config/cache.php file.
If you want to disable the cache, you can set the ttl to null.
Usage
Now it's time to configure the package.
Nova resource
First, register the NovaRedirectorSeo tool in your /app/Providers/NovaServiceProvider.php (you will probably have to add the entire function):
/** * Register the application's Nova resources. * * @return void */ protected function resources() { Nova::resourcesIn(app_path('Nova')); Nova::resources([ \The3LabsTeam\NovaRedirectorSeo\App\Nova\NovaRedirectorSeo::class, ]); }
Now you can access the tool in your Nova panel, under the "SEO" menu.
Middleware
NovaRedirectorSeo is provided with a middleware that will redirect the user to the correct URL, if the current URL is not the correct one.
You can add this middleware to your app/Http/Kernel.php file:
protected $middleware = [ \The3LabsTeam\NovaRedirectorSeo\App\Http\Middleware\NovaRedirectorSeoMiddleware::class, //...
Policies
You can add a policy to the NovaRedirectorSeo resource, to restrict the access to the resource.
First, you need to create a policy for the NovaRedirectorSeo resource:
php artisan make:policy NovaRedirectorSeoPolicy
Then, register the policy in your app/Providers/AuthServiceProvider.php file:
protected $policies = [ 'The3LabsTeam\NovaRedirectorSeo\App\Models\NovaRedirectorSeo' => 'App\Policies\NovaRedirectorSeoPolicy', ];
If you need, you can use this policy as a template:
<?php namespace App\Policies; use App\Models\User; use The3LabsTeam\NovaRedirectorSeo\App\Models\NovaRedirectorSeo; use Illuminate\Auth\Access\HandlesAuthorization; class NovaRedirectorSeoPolicy { use HandlesAuthorization; /** * Determine whether the user can view any models. * * @param \App\Models\User $user * @return \Illuminate\Auth\Access\Response|bool */ public function viewAny(User $user) { return true; } /** * Determine whether the user can view the model. * * @param \App\Models\User $user * @param The3LabsTeam\NovaRedirectorSeo\App\Models\NovaRedirectorSeo $novaRedirectorSeo * @return \Illuminate\Auth\Access\Response|bool */ public function view(User $user, NovaRedirectorSeo $novaRedirectorSeo) { return true; } /** * Determine whether the user can create models. * * @param \App\Models\User $user * @param The3LabsTeam\NovaRedirectorSeo\App\Models\NovaRedirectorSeo $novaRedirectorSeo * @return \Illuminate\Auth\Access\Response|bool */ public function create(User $user) { return false; } /** * Determine whether the user can update the model. * * @param \App\Models\User $user * @param The3LabsTeam\NovaRedirectorSeo\App\Models\NovaRedirectorSeo $novaRedirectorSeo * @return \Illuminate\Auth\Access\Response|bool */ public function update(User $user, NovaRedirectorSeo $novaRedirectorSeo) { return false; } /** * Determine whether the user can delete the model. * * @param \App\Models\User $user * @param The3LabsTeam\NovaRedirectorSeo\App\Models\NovaRedirectorSeo $novaRedirectorSeo * @return \Illuminate\Auth\Access\Response|bool */ public function delete(User $user, NovaRedirectorSeo $novaRedirectorSeo) { return false; } /** * Determine whether the user can restore the model. * * @param \App\Models\User $user * @param The3LabsTeam\NovaRedirectorSeo\App\Models\NovaRedirectorSeo $novaRedirectorSeo * @return \Illuminate\Auth\Access\Response|bool */ public function restore(User $user, NovaRedirectorSeo $novaRedirectorSeo) { return false; } /** * Determine whether the user can permanently delete the model. * * @param \App\Models\User $user * @param The3LabsTeam\NovaRedirectorSeo\App\Models\NovaRedirectorSeo $novaRedirectorSeo * @return \Illuminate\Auth\Access\Response|bool */ public function forceDelete(User $user, NovaRedirectorSeo $novaRedirectorSeo) { return false; } }
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
License
The MIT License (MIT). Please see License File for more information.
Sponsor
the-3labs-team/nova-redirector-seo 适用场景与选型建议
the-3labs-team/nova-redirector-seo 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 4.13k 次下载、GitHub Stars 达 1, 最近一次更新时间为 2023 年 01 月 18 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「laravel」 「The-3Labs-Team」 「nova-redirector-seo」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 the-3labs-team/nova-redirector-seo 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 the-3labs-team/nova-redirector-seo 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 the-3labs-team/nova-redirector-seo 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Laravel GNews Sitemap
Laravel Readability is a supercharged PHP client that makes it easy to extract and manipulate the main content of a web page.
Alfabank REST API integration
Laravel Referral Rewriter Tag
This is my package laravel-ads-post-parser
A Laravel package to link keywords in your content
统计信息
- 总下载量: 4.13k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 14
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-01-18
