Skip to content

boyfromhell/filament-settings

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Filament settings and sitemap

img

This package allows for easy setting management using

Spatie's ValueStore package

Spatie's Generate sitemaps package

Content of the configuration file

return [
    // Group the menu item belongs to
    'group' => 'Settings',
    // Sidebar label
    'label' => 'Settings',
    // Path to the file to be used as storage
    'path' => storage_path('app/settings.json'),
];

Installation

  1. Require the package
composer require ichbin/filament-settings "^v2.0"
  1. publish the configuration file
php artisan vendor:publish --tag=filament-settings-config
  1. (Optionally) you can publish the views for the page and the view used by the livewire component
php artisan vendor:publish --tag=filament-settings-views

Usage

Define your fields by adding the following in the boot method of your AppServiceProvider

\IchBin\FilamentSettings\FilamentSettings::setFormFields([
    \Filament\Forms\Components\TextInput::make('title'),
]);

After that you can access your values as you usually would using spatie/valuestore

Or in blade

{{ setting('key') }}

Hiding the page for users

To hide the Settings page from some users add a canManageSettings method to your User model.

public function canManageSettings(): bool
{
    return $this->can('manage.settings');
}

By default the page will be shown to all users.