dovaldev/filament-simple-seo

A simple way to integrate a filament seo table to your app.

Installs: 7

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/dovaldev/filament-simple-seo

v2.0.1 2025-11-19 20:42 UTC

This package is auto-updated.

Last update: 2025-12-19 20:52:29 UTC


README

Compatibilidad

  • PHP ^8.2
  • Laravel ^12.0
  • Filament ^4.0

Uso con Filament v4 (Panel Plugin)

Registra el plugin en tu Panel para que el recurso "SEO" se añada automáticamente al menú:

use Dovaldev\FilamentSimpleSeo\FilamentSimpleSeoPlugin;

// Dentro de tu builder de Panel
$panel->plugins([
    FilamentSimpleSeoPlugin::make(),
]);

Tras registrarlo, verás el grupo de navegación "SEO" con el CRUD listo (listar, crear y editar).

/** SEO */
Forms\Components\Section::make('SEO')
    ->description('Add the SEO data to your model')
    ->relationship('seo')
    ->collapsed()
    ->collapsible()
    ->schema([
        Forms\Components\TextInput::make('title')
            ->maxLength(255),
        Forms\Components\TextInput::make('description')
            ->maxLength(255),
        Forms\Components\Fieldset::make('Estado')
            ->schema([
                Forms\Components\Toggle::make('index')->default(true),
            Forms\Components\Toggle::make('follow')->default(true),
            Forms\Components\Toggle::make('status')->default(true),
        ])
        ->columns(3),
]),

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

This is where your description should go. Limit it to a paragraph or two. Consider adding a small example.

Installation

You can install the package via composer:

composer require dovaldev/filament-simple-seo

You can publish and run the migrations with:

php artisan filament-simple-seo
php artisan migrate

You can publish the config file with:

php artisan vendor:publish --tag="filament-simple-seo-config"

Optionally, you can publish the views using

php artisan vendor:publish --tag="filament-simple-seo-views"

This is the contents of the published config file:

return [
];

Adding SEO to User Model

To add SEO to the User model, add the following method to the User model:

use Dovaldev\FilamentSimpleSeo\Models\Seo;

/**
 * Get the SEO data for the user.
 */
public function seo() {
    return $this->morphOne(Seo::class, 'seoable');
}

Opcional: Campos SEO en tus formularios

Si además quieres mostrar/editar los campos SEO dentro de tus propios recursos de Filament, puedes añadir una sección como esta a tu Form:

/** SEO */
Forms\Components\Section::make('SEO')
    ->description('Add the SEO data to your model')
    ->relationship('seo')
    ->collapsed()
    ->collapsible()
    ->schema([
        Forms\Components\TextInput::make('title')
            ->maxLength(255),
        Forms\Components\TextInput::make('description')
            ->maxLength(255),
        Forms\Components\Fieldset::make('Estado')
            ->schema([
                Forms\Components\Toggle::make('index')->default(true),
                Forms\Components\Toggle::make('follow')->default(true),
                Forms\Components\Toggle::make('status')->default(true),
            ])
            ->columns(3),
    ]);

Nota de migración

  • La tabla seos ahora incluye clave primaria id y columnas polimórficas mediante morphs('seoable') para compatibilidad completa con Eloquent y el CRUD.

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.