diff --git a/apps/backend/src/admin/dto/admin-web/update-blog.dto.ts b/apps/backend/src/admin/dto/admin-web/update-blog.dto.ts
index 29d9eca..8c79caa 100644
--- a/apps/backend/src/admin/dto/admin-web/update-blog.dto.ts
+++ b/apps/backend/src/admin/dto/admin-web/update-blog.dto.ts
@@ -8,6 +8,9 @@ export class UpdateBlogDto {
@IsString()
description: string;
+ @IsString()
+ slug: string;
+
@IsString()
contentUrl: string;
diff --git a/apps/frontend/app/console/(with-menu)/web/blog/components/BlogEdit.tsx b/apps/frontend/app/console/(with-menu)/web/blog/components/BlogEdit.tsx
index e7aabe6..1eb5121 100644
--- a/apps/frontend/app/console/(with-menu)/web/blog/components/BlogEdit.tsx
+++ b/apps/frontend/app/console/(with-menu)/web/blog/components/BlogEdit.tsx
@@ -20,6 +20,7 @@ import { BlogPermissionCheckBoxs } from "./BlogPermissionCheckBoxs"
import { BlogPermission } from "@/lib/types/Blog.Permission.enum"
import { SetPasswordDialog } from "./SetPasswordDialog"
import { AdminAPI } from "@/lib/api/client"
+import { copyShareURL } from "./utils"
interface BlogEditProps {
id: string;
@@ -46,6 +47,7 @@ export default function BlogEdit({ id, children, onRefresh }: BlogEditProps) {
await AdminAPI.updateBlog(id, {
title: blog.title,
description: blog.description,
+ slug: blog.slug,
contentUrl: blog.contentUrl,
permissions: blog.permissions,
});
@@ -106,6 +108,17 @@ export default function BlogEdit({ id, children, onRefresh }: BlogEditProps) {
onChange={(e) => mutate({ ...blog, description: e.target.value }, false)}
/>
+
+
+ mutate({ ...blog, slug: e.target.value }, false)}
+ />
+