生成SEO标签

v0.1.1 2020-08-28 04:06 UTC

This package is auto-updated.

Last update: 2024-09-28 13:30:48 UTC


README

正如标题所述,这个包配置了laravel模型中的搜索引擎优化,甚至如果您想的话,可以保存SEO到数据库中

安装

您可以通过composer安装此包

composer require claudiusnascimento/seo:0.1.1

在config\app.php的服务提供者数组中添加SeoServiceProvider

ClaudiusNascimento\Seo\SeoServiceProvider::class

在config\app.php的别名数组中添加SeoFacade

'Seo' => ClaudiusNascimento\Seo\SeoFacade::class

在您的模型中添加该特质

use ClaudiusNascimento\Seo\Traits\SeoTrait;

class Page
{
    use SeoTrait;
}

发布配置文件(非强制)

php artisan vendor:publish --provider="ClaudiusNascimento\Seo\SeoServiceProvider" --tag="config"

使用方法

现在,您可以在控制器中设置SEO,如下所示

public function homePage()
{
    $page = Page::find(1);

    \Seo::setTitle('Home Page');
}

在适当的位置添加以下内容,以生成元标签

{!! \Seo::generate() !!}

此行将生成SEO HTML元标签。

数据库保存

如果您想,并且我强烈推荐,您可以将SEO保存到数据库中。

迁移seo表

php artisan migrate --path=vendor/claudiusnascimento/seo/database/migrations

在您的编辑模型视图中放置以下HTML

{{ $model->generateSeo() }}

此行将显示用于将SEO存储在数据库中的表单。您可以将此放在其他位置,但需要模型实例。

工作原理

为了生成存储SEO的表单,该包需要模型ID和模型关系,ID从 $model->id 获取,SEO关系将从 class_basename 自动获取。强烈建议您更改此行为。

在您的模型中您可以添加属性

public $seo_relation = 'pages'; // for example

或者,您也可以添加一个方法

public function getSeoRelation()
{
    return 'pages';
}

现在,您在控制器中设置SEO的方式将改变

public function homePage()
{
    $page = Page::find(1);

    \Seo::setModel($page);
}

代码将从编辑视图中获取存储的SEO

***您可以将SEO表单存储在任意位置。只需模型对象即可 ***

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

贡献

有关详细信息,请参阅CONTRIBUTING

安全

如果您发现任何安全问题,请通过电子邮件cau@claudiusnascimento.com报告,而不是使用问题跟踪器。

鸣谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件

Laravel包模板

此包是用Laravel包模板生成的。