This commit is contained in:
F4ilji
2026-03-20 23:35:09 +05:00
parent c80a52ab86
commit 836452add6
9 changed files with 88 additions and 17 deletions
@@ -95,9 +95,12 @@ class CreatePostFromAiDataTask
*/
private function preparePostData(array $newsData, array $content, ?string $previewPath, array $imagesPaths): array
{
$baseSlug = Str::slug($newsData['title'] ?? '');
$slug = $this->generateUniqueSlug($baseSlug);
return [
'title' => $newsData['title'] ?? 'Без названия',
'slug' => Str::slug($newsData['title'] ?? '') . '-' . time(),
'slug' => $slug,
'content' => $content,
'authors' => $newsData['authors'] ?? [],
'category_id' => $newsData['category_id'] ?? null,
@@ -113,6 +116,22 @@ class CreatePostFromAiDataTask
];
}
/**
* Генерирует уникальный slug
*/
private function generateUniqueSlug(string $baseSlug): string
{
$slug = $baseSlug;
$count = 1;
while (Post::where('slug', $slug)->exists()) {
$slug = $baseSlug . '-' . $count;
$count++;
}
return $slug;
}
/**
* Сохраняет теги поста
*/