galtsevt/laravel-seo 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

galtsevt/laravel-seo

最新稳定版本:0.6

Composer 安装命令:

composer require galtsevt/laravel-seo

包简介

description

README 文档

README

  1. laravel 9/10

Установка

  1. Установить пакет composer require galsevt/laravel-seo
  2. выполнить миграции php artisan migrate Модуль используется для управления meta данными, хлебными крошками, а так же для генерации карты сайта.

Использование

Расширить модель с помощью trait Galtsevt\LaravelSeo\Traits\HasSeo, после добавления данного трейта модель будет автоматически искать seo в запросе при создании и обновлении.

Добавить интерфейс SitemapContract.
Galtsevt\\LaravelSeo\\Interfaces\\SitemapContract 

<?php

namespace Kontur\News\App\Models;


use Galtsevt\LaravelSeo\App\Interfaces\SitemapContract; // [tl! add]
use Galtsevt\LaravelSeo\App\Traits\HasSeo; // [tl! add]

class News extends Model implements SitemapContract
{
    use HasFactory, HasSeo;
}

По умолчанию карта сайта генерируется на лету при обращении к контроллеру, но вероятно в будущем, в особенности из за магазина, вам понадобиться генерировать карту сайта запуском php из консоли. 

Автоматическая генерация карты сайта, каждый день в час ночи:

$schedule->call(function () {  
    $sitemapGenerator = new SiteMapGenerator();  
    $sitemapGenerator->saveToFile();  
})->dailyAt('1:00');

Хлебные крошки

Добавление хлебных крошек через фасад Galtsevt\LaravelSeo\Facades\Seo, можно добавить как один элемент:

Seo::breadcrumbs()->add('Name', 'Url'); // Один элемент

Так и сразу несколько:

Seo::breadcrumbs()->addList([
  'url' => 'name',
  'url1' => 'name1',
]);  // несколько элементов

Получить весь список:

Seo::breadcrumbs()->getAll();

Вывести через готовый blade component:

<x-laravel-seo::breadcrumbs/>

Seo данные

Доступ к мета данным через фасад Galtsevt\LaravelSeo\Facades\Seo

Seo::metaData();

Извлечь отношения seo из модели

Seo::metaData()->prepare($news)

Извлечь отношения seo и при их отсутствии попытаться запросить из базы шаблонные данные

Seo::metaData()->prepare($news)->withTemplate();

Шаблонные seo

Шаблонные seo относятся к моделям, для регистрации достаточно название которое будет отображаться в админ панели и модель которую вы хотите зарегистрировать.

Добавление происходит через фасад Seo в ServiceProvider вашего модуля.

Seo::template()->add(
    new TemplateSeo(
        name: 'Новости',
        model: News::class,
    )
);

统计信息

  • 总下载量: 14
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: proprietary
  • 更新时间: 2023-06-07