Dynamic Settings

FrankenCMS provides a powerful, extensible settings system built on top of spatie/laravel-settings for type-safe configuration management.

Accessing CMS Settings

Navigate to CMS Settings in the admin panel to configure your site:

Screenshot

CMS Settings page with tabbed interface showing General, Reading, SEO, Media, Permalinks, and more.

Settings Categories

General Settings

  • Site Title: Your website name
  • Tagline: Site description/slogan
  • Timezone: Default timezone for dates
  • Date Format: How dates are displayed
  • Time Format: How times are displayed

Reading Settings

  • Homepage Display: Latest posts or static page
  • Posts Per Page: Number of posts on archive pages
  • Blog Page: Page to display blog posts

Media Settings

  • Image Aspect Ratios: Default crop ratios
  • Responsive Images: Enable/disable srcset
  • Focal Point: Enable focal point cropping

SEO Settings

  • Site Name: Name used in title tags
  • Title Separator: Character between page title and site name
  • Default OG Image: Fallback social sharing image

Accessing Settings in Code

Using the Helper Function

php
// Get a setting value
$siteName = siteSetting('site_name');

// With a default fallback
$tagline = siteSetting('tagline', 'Welcome to our site');

Using the Blade Directive

blade
<h1>@siteSetting('site_name')</h1>
<p>@siteSetting('tagline', 'Welcome')</p>

Using Settings Classes Directly

php
use FrankenCms\Settings\GeneralSettings;
use FrankenCms\Settings\SeoSettings;

// Get general settings
$general = app(GeneralSettings::class);
$siteName = $general->site_name;
$timezone = $general->timezone;

// Get SEO settings
$seo = app(SeoSettings::class);
$titleSeparator = $seo->title_separator;

Available Setting Classes

Class Purpose
GeneralSettings Site name, tagline, timezone, formats
ReadingSettings Homepage, posts per page, blog page
MediaSettings Image processing options
SeoSettings SEO defaults and configuration
PermalinkSettings URL structure configuration

Extending Settings

External packages can register their own settings tabs. See the Settings Tabs guide for details.

Next Steps