c6digital / filament-og-manager
在 Filament 内管理您网站的 Open Graph 标签。
v0.1.2
2024-10-01 15:13 UTC
Requires
- php: ^8.1
- filament/filament: ^3.0
- spatie/laravel-package-tools: ^1.15.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.9
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^8.0
- pestphp/pest: ^2.1
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- spatie/laravel-ray: ^1.26
README
此包提供了一个全局 SEO 页面,让您可以管理 Open Graph 标签,以及一组用于管理特定资源 Open Graph 标签的字段。
安装
您可以通过 Composer 安装此包
composer require c6digital/filament-og-manager
运行安装命令
php artisan og-manager:install
这将发布和执行迁移。
使用方法
注册插件
use C6Digital\OgManager\OgManagerPlugin; $panel ->plugin( OgManagerPlugin::make() );
全局 SEO 页面将与您的面板注册,并自动出现在面板中。使用此表单来管理您网站的全局 Open Graph 标签。
渲染元标签
要在 Blade 模板中渲染元标签,请使用提供的组件
<head> <x-og-manager::seo /> </head>
模型特定标签
此包提供了一组自定义字段,您可以将它们添加到自己的资源表单中。
use C6Digital\OgManager\Components\SEO; public function form(Form $form): Form { return $form->schema([ SEO::make(), ]); }
您需要将 HasOpenGraphMeta
特性添加到您的模型中。
use C6Digital\OgManager\Concerns\HasOpenGraphMeta; class Post extends Model { use HasOpenGraphMeta; }
这将在您的模型上注册一个新的 openGraphMeta
关系,该字段将使用此关系。
要渲染特定模型的元标签,请使用 for
属性通过 Blade 组件传递模型。
<head> <x-og-manager::seo :for="$post" /> </head>
更改 URL
此包默认在渲染元标签时使用 url()->current()
(og:url
,twitter:url
)。如果您想更改 URL,可以将它作为属性传递给 Blade 组件。
<x-og-manager::seo :url="route('posts.show', $post)" />
测试
composer test
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
贡献
有关详细信息,请参阅 CONTRIBUTING。
安全漏洞
有关如何报告安全漏洞的详细信息,请参阅 我们的安全策略。
鸣谢
许可协议
MIT 许可协议 (MIT)。有关更多信息,请参阅 许可文件。