Creator
in package
implements
IPageCreator
Page creation service.
Creates new pages with validation and slug generation.
Table of Contents
Interfaces
- IPageCreator
- Page creation service interface
Properties
Methods
- __construct() : mixed
- create() : Page
- Create a new page from DTO
- generateSlug() : string
- Generate URL-friendly slug from title
Properties
$_pageRepository
private
IPageRepository
$_pageRepository
$_slugGenerator
private
SlugGenerator
$_slugGenerator
Methods
__construct()
public
__construct(IPageRepository $pageRepository[, SlugGenerator|null $slugGenerator = null ]) : mixed
Parameters
- $pageRepository : IPageRepository
- $slugGenerator : SlugGenerator|null = null
create()
Create a new page from DTO
public
create(Dto $request) : Page
Parameters
- $request : Dto
-
DTO containing title, content, author_id, status, slug, template, meta_title, meta_description, meta_keywords
Return values
PagegenerateSlug()
Generate URL-friendly slug from title
private
generateSlug(string $title) : string
For titles with only non-ASCII characters (e.g., "你好", "مرحبا"), generates a fallback slug using a unique identifier.
Parameters
- $title : string