@props([ 'post' => null, 'categories', 'allTags' => null, // Passed in by the controller rather than read from a view composer: // SiteComposer only binds to frontend views, so admin templates have no // $generalSettings of their own. 'defaultAuthor' => null, ]) @php $tagValue = old('tags', $post?->tags->pluck('name')->implode(', ') ?? ''); $publishedAtValue = old('published_at', $post?->published_at?->format('Y-m-d\TH:i') ?? ''); @endphp
{{-- --- Main column: the article itself ---------------------------- --}}

Article

@error('title')
{{ $message }}
@enderror
{{ rtrim(config('app.url'), '/') }}/blog/ @error('slug')
{{ $message }}
@enderror
Shown on the article card and used as the fallback meta description. Aim for 140–200 characters.
@error('short_description')
{{ $message }}
@enderror
Use Heading 2 and Heading 3 for sections — the table of contents on the published article is built from them automatically, along with the reading time.
@error('content')
{{ $message }}
@enderror

SEO

@error('seo_title')
{{ $message }}
@enderror
@error('seo_meta_description')
{{ $message }}
@enderror
@error('seo_canonical_url')
{{ $message }}
@enderror
@if($post?->seo_og_image_path)
@endif @error('seo_og_image')
{{ $message }}
@enderror
{{-- --- Sidebar: publishing + taxonomy + image ---------------------- --}}

Publishing

@error('status')
{{ $message }}
@enderror
Leave empty when publishing to use the current time. Required for a scheduled article.
@error('published_at')
{{ $message }}
@enderror
@error('author_name')
{{ $message }}
@enderror
is_featured ?? false))>

Organisation

@error('blog_category_id')
{{ $message }}
@enderror @if($categories->isEmpty())
No categories exist yet — create one first.
@endif
@if($allTags?->isNotEmpty()) @foreach($allTags as $tagName) @endforeach @endif
Comma separated. New tags are created automatically.
@error('tags')
{{ $message }}
@enderror

Featured image

@if($post?->featured_image_path) @endif
Recommended 1600 × 900. Converted to WebP and thumbnailed automatically.
@error('featured_image')
{{ $message }}
@enderror