chore: remove emdash files (seed, scripts, db, env types)
User-approved deletion of emdash remnants: - .emdash/ directory - seed/, seed-*.cjs, count-cols.cjs (emdash seed scripts) - data.db, data.db-shm, data.db-wal (emdash SQLite) - emdash-env.d.ts (emdash type definitions) Site is now 100% markdown-driven, no CMS runtime needed.
This commit is contained in:
@@ -1,578 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "1",
|
|
||||||
"collections": [
|
|
||||||
{
|
|
||||||
"slug": "pages",
|
|
||||||
"label": "Pages",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "title", "type": "string", "label": "Title" },
|
|
||||||
{ "slug": "subtitle", "type": "string", "label": "Subtitle" },
|
|
||||||
{ "slug": "badge", "type": "string", "label": "Badge" },
|
|
||||||
{ "slug": "hero_image", "type": "image", "label": "Hero Image" },
|
|
||||||
{ "slug": "theme", "type": "select", "label": "Theme", "options": ["yellow", "accent"] },
|
|
||||||
{ "slug": "show_cta", "type": "boolean", "label": "Show CTA" },
|
|
||||||
{ "slug": "cta_text", "type": "string", "label": "CTA Text" },
|
|
||||||
{ "slug": "cta_link", "type": "string", "label": "CTA Link" },
|
|
||||||
{ "slug": "variant", "type": "select", "label": "Hero Variant", "options": ["split", "centered", "text_only", "floating_cards"] },
|
|
||||||
{ "slug": "size", "type": "select", "label": "Hero Size", "options": ["full", "compact"] }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "services",
|
|
||||||
"label": "Services",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "title", "type": "string", "label": "Title" },
|
|
||||||
{ "slug": "subtitle", "type": "string", "label": "Subtitle" },
|
|
||||||
{ "slug": "badge", "type": "string", "label": "Badge" },
|
|
||||||
{ "slug": "hero_image", "type": "image", "label": "Hero Image" },
|
|
||||||
{ "slug": "content", "type": "portableText", "label": "Content" },
|
|
||||||
{
|
|
||||||
"slug": "features",
|
|
||||||
"type": "repeater",
|
|
||||||
"label": "Features",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "icon", "type": "string", "label": "Icon" },
|
|
||||||
{ "slug": "feature_title", "type": "string", "label": "Title" },
|
|
||||||
{ "slug": "description", "type": "string", "label": "Description" }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "portfolio",
|
|
||||||
"label": "Portfolio",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "name", "type": "string", "label": "Name" },
|
|
||||||
{ "slug": "url", "type": "url", "label": "URL" },
|
|
||||||
{ "slug": "category", "type": "select", "label": "Category", "options": ["webdev", "ecommerce", "marketing"] },
|
|
||||||
{ "slug": "category_label", "type": "string", "label": "Category Label" },
|
|
||||||
{ "slug": "thumbnail", "type": "image", "label": "Thumbnail" },
|
|
||||||
{ "slug": "description", "type": "text", "label": "Description" },
|
|
||||||
{
|
|
||||||
"slug": "services",
|
|
||||||
"type": "repeater",
|
|
||||||
"label": "Services",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "service_name", "type": "string", "label": "Name" }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "blog",
|
|
||||||
"label": "Blog",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "title", "type": "string", "label": "Title" },
|
|
||||||
{ "slug": "excerpt", "type": "string", "label": "Excerpt" },
|
|
||||||
{ "slug": "image", "type": "image", "label": "Image" },
|
|
||||||
{ "slug": "date", "type": "datetime", "label": "Date" },
|
|
||||||
{ "slug": "category", "type": "string", "label": "Category" },
|
|
||||||
{ "slug": "content", "type": "portableText", "label": "Content" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "faq",
|
|
||||||
"label": "FAQ",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "category", "type": "string", "label": "Category" },
|
|
||||||
{ "slug": "question", "type": "string", "label": "Question" },
|
|
||||||
{ "slug": "answer", "type": "text", "label": "Answer" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "settings",
|
|
||||||
"label": "Site Settings",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "site_name", "type": "string", "label": "Site Name" },
|
|
||||||
{ "slug": "email", "type": "string", "label": "Contact Email" },
|
|
||||||
{ "slug": "phone", "type": "string", "label": "Contact Phone" },
|
|
||||||
{ "slug": "address", "type": "text", "label": "Address" },
|
|
||||||
{ "slug": "facebook", "type": "url", "label": "Facebook URL" },
|
|
||||||
{ "slug": "line", "type": "url", "label": "LINE URL" },
|
|
||||||
{ "slug": "linkedin", "type": "url", "label": "LinkedIn URL" }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"content": {
|
|
||||||
"pages": [
|
|
||||||
{
|
|
||||||
"id": "page-home",
|
|
||||||
"slug": "home",
|
|
||||||
"data": {
|
|
||||||
"title": "เปลี่ยนธุรกิจของคุณ ด้วย AI และเทคโนโลยีสมัยใหม่",
|
|
||||||
"subtitle": "รับทำเว็บไซต์ SEO AI Chatbot สำหรับธุรกิจไทย<br>เพิ่มยอดขาย ลดต้นทุน ด้วยเทคโนโลยีล้ำสมัย",
|
|
||||||
"badge": "ดิจิทัลเอเจนซี่ในประเทศไทย",
|
|
||||||
"hero_image": "/images/hero/hero.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "split",
|
|
||||||
"size": "full",
|
|
||||||
"show_cta": true,
|
|
||||||
"cta_text": "เริ่มต้นวันนี้",
|
|
||||||
"cta_link": "/contact"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-about",
|
|
||||||
"slug": "about",
|
|
||||||
"data": {
|
|
||||||
"title": "เกี่ยวกับ มอร์มินิมอร์",
|
|
||||||
"subtitle": "บริษัท มอร์มินิมอร์ จำกัด<br>รับทำเว็บไซต์ SEO AI Chatbot สำหรับธุรกิจไทย",
|
|
||||||
"badge": "เกี่ยวกับเรา",
|
|
||||||
"hero_image": "/images/hero/about.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "centered",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-portfolio",
|
|
||||||
"slug": "portfolio",
|
|
||||||
"data": {
|
|
||||||
"title": "ผลงานของเรา",
|
|
||||||
"subtitle": "รวมผลงานพัฒนาเว็บไซต์และโปรเจกต์ที่เราภาคภูมิใจ",
|
|
||||||
"badge": "พอร์ตโฟลิโอ",
|
|
||||||
"hero_image": "/images/hero/hero.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "text-only",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-contact",
|
|
||||||
"slug": "contact",
|
|
||||||
"data": {
|
|
||||||
"title": "พูดคุยกับเรา วันนี้เลย!",
|
|
||||||
"subtitle": "พร้อมให้คำปรึกษาและช่วยเหลือคุณ<br>ปรึกษาฟรี ไม่มีค่าใช้จ่าย",
|
|
||||||
"badge": "ติดต่อเรา",
|
|
||||||
"hero_image": "/images/hero/contact.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "text-only",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-faq",
|
|
||||||
"slug": "faq",
|
|
||||||
"data": {
|
|
||||||
"title": "คำถามที่พบบ่อย",
|
|
||||||
"subtitle": "หาคำตอบสำหรับคำถามที่พบบ่อยเกี่ยวกับบริการของเรา",
|
|
||||||
"badge": "FAQ",
|
|
||||||
"hero_image": "/images/hero/tech-consult.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "centered",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-privacy",
|
|
||||||
"slug": "privacy",
|
|
||||||
"data": {
|
|
||||||
"title": "นโยบายความเป็นส่วนตัว",
|
|
||||||
"subtitle": "มีผลบังคับใช้วันที่ 5 พฤษภาคม 2569",
|
|
||||||
"badge": "กฎหมาย",
|
|
||||||
"hero_image": "/images/hero/ai-automation.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "text-only",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-terms",
|
|
||||||
"slug": "terms",
|
|
||||||
"data": {
|
|
||||||
"title": "เงื่อนไขการให้บริการ",
|
|
||||||
"subtitle": "มีผลบังคับใช้วันที่ 5 พฤษภาคม 2569",
|
|
||||||
"badge": "กฎหมาย",
|
|
||||||
"hero_image": "/images/hero/marketing-automation.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "text-only",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"services": [
|
|
||||||
{
|
|
||||||
"id": "service-webdev",
|
|
||||||
"slug": "webdev",
|
|
||||||
"data": {
|
|
||||||
"title": "พัฒนาเว็บไซต์",
|
|
||||||
"subtitle": "สร้างเว็บไซต์ที่ทันสมัย รวดเร็ว และตอบสนองความต้องการของลูกค้าของคุณ ด้วยเทคโนโลยีล่าสุดและ design ที่สวยงาม",
|
|
||||||
"badge": "บริการ",
|
|
||||||
"hero_image": "/images/hero/web-development-hero.jpg",
|
|
||||||
"feature1_icon": "⚡",
|
|
||||||
"feature1_title": "เร็วสุดใน class",
|
|
||||||
"feature1_desc": "โหลดเร็ว เพิ่ม conversion และ SEO ranking",
|
|
||||||
"feature2_icon": "📱",
|
|
||||||
"feature2_title": "Responsive ทุก device",
|
|
||||||
"feature2_desc": "แสดงผลได้ดีบน mobile tablet และ desktop",
|
|
||||||
"feature3_icon": "🎨",
|
|
||||||
"feature3_title": "Design สวยงาม",
|
|
||||||
"feature3_desc": "ออกแบบ UI/UX ที่ดึงดูดและใช้งานง่าย",
|
|
||||||
"feature4_icon": "🔒",
|
|
||||||
"feature4_title": "ปลอดภัย",
|
|
||||||
"feature4_desc": "Security ระดับสูง ป้องกันการโจมตี",
|
|
||||||
"feature5_icon": "🔍",
|
|
||||||
"feature5_title": "SEO Optimized",
|
|
||||||
"feature5_desc": "ออกแบบมาเพื่อให้ Google ชอบ",
|
|
||||||
"feature6_icon": "📊",
|
|
||||||
"feature6_title": "Analytics ในตัว",
|
|
||||||
"feature6_desc": "ติดตามผู้เข้าชมและวัดผลได้"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "service-marketing",
|
|
||||||
"slug": "marketing",
|
|
||||||
"data": {
|
|
||||||
"title": "Marketing Automation",
|
|
||||||
"subtitle": "เพิ่มประสิทธิภาพการตลาดและลดต้นทุนด้วยระบบอัตโนมัติ ประหยัดเวลา เพิ่ม conversion วัดผลได้",
|
|
||||||
"badge": "บริการ",
|
|
||||||
"hero_image": "/images/hero/marketing-automation-hero.jpg",
|
|
||||||
"feature1_icon": "📧",
|
|
||||||
"feature1_title": "Email Automation",
|
|
||||||
"feature1_desc": "ส่ง email อัตโนมัติเมื่อ trigger ตรงกับเงื่อนไขที่กำหนด",
|
|
||||||
"feature2_icon": "💬",
|
|
||||||
"feature2_title": "Chatbot Integration",
|
|
||||||
"feature2_desc": "เชื่อมต่อ chatbot กับระบบ CRM เพื่อเก็บข้อมูลลูกค้า",
|
|
||||||
"feature3_icon": "📱",
|
|
||||||
"feature3_title": "SMS/Line Automation",
|
|
||||||
"feature3_desc": "ส่ง SMS หรือ LINE message อัตโนมัติตาม timeline",
|
|
||||||
"feature4_icon": "📊",
|
|
||||||
"feature4_title": "Analytics Dashboard",
|
|
||||||
"feature4_desc": "ติดตามผลแคมเปญและวัด ROI ได้แบบ real-time",
|
|
||||||
"feature5_icon": "🎯",
|
|
||||||
"feature5_title": "Lead Scoring",
|
|
||||||
"feature5_desc": "ให้คะแนน leads ตามพฤติกรรมเพื่อจัดลำดับความสำคัญ",
|
|
||||||
"feature6_icon": "🔄",
|
|
||||||
"feature6_title": "Workflow Automation",
|
|
||||||
"feature6_desc": "สร้าง workflow อัตโนมัติสำหรับงานที่ทำซ้ำๆ"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "service-ai",
|
|
||||||
"slug": "ai",
|
|
||||||
"data": {
|
|
||||||
"title": "AI Automation",
|
|
||||||
"subtitle": "นำ AI มาใช้เพื่อเพิ่มยอดขายและปรับปรุงการให้บริการลูกค้า เพิ่มประสิทธิภาพ ลดต้นทุน ด้วยเทคโนโลยีล้ำสมัย",
|
|
||||||
"badge": "บริการ",
|
|
||||||
"hero_image": "/images/hero/ai-automation-hero.jpg",
|
|
||||||
"feature1_icon": "🤖",
|
|
||||||
"feature1_title": "AI Chatbot",
|
|
||||||
"feature1_desc": "Chatbot ที่ใช้ AI ตอบคำถามลูกค้าได้ 24/7 รองรับภาษาไทย",
|
|
||||||
"feature2_icon": "💬",
|
|
||||||
"feature2_title": "AI Customer Service",
|
|
||||||
"feature2_desc": "ระบบตอบคำถามอัตโนมัติด้วย AI ที่เข้าใจบริบท",
|
|
||||||
"feature3_icon": "📝",
|
|
||||||
"feature3_title": "AI Content Generation",
|
|
||||||
"feature3_desc": "สร้าง content อัตโนมัติด้วย AI ที่ SEO friendly",
|
|
||||||
"feature4_icon": "📧",
|
|
||||||
"feature4_title": "AI Email Marketing",
|
|
||||||
"feature4_desc": "ส่ง email ที่ personalized ด้วย AI ที่วิเคราะห์พฤติกรรม",
|
|
||||||
"feature5_icon": "📊",
|
|
||||||
"feature5_title": "AI Sales Prediction",
|
|
||||||
"feature5_desc": "ทำนายยอดขายและวางแผนการตลาดด้วย AI",
|
|
||||||
"feature6_icon": "🎯",
|
|
||||||
"feature6_title": "AI Lead Scoring",
|
|
||||||
"feature6_desc": "ให้คะแนน leads อัตโนมัติด้วย AI ที่เรียนรู้จากข้อมูล"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "service-consult",
|
|
||||||
"slug": "consult",
|
|
||||||
"data": {
|
|
||||||
"title": "Tech Consult",
|
|
||||||
"subtitle": "ให้คำปรึกษาด้านเทคโนโลยีเพื่อธุรกิจของคุณ วางแผน ออกแบบ และ implement ระบบที่เหมาะสม",
|
|
||||||
"badge": "บริการ",
|
|
||||||
"hero_image": "/images/hero/tech-consult-hero.jpg",
|
|
||||||
"feature1_icon": "🔍",
|
|
||||||
"feature1_title": "Digital Audit",
|
|
||||||
"feature1_desc": "วิเคราะห์สถานะดิจิทัลปัจจุบันของธุรกิจคุณอย่างละเอียด",
|
|
||||||
"feature2_icon": "📋",
|
|
||||||
"feature2_title": "Digital Strategy",
|
|
||||||
"feature2_desc": "วางแผน digital transformation ที่เหมาะกับเป้าหมายธุรกิจ",
|
|
||||||
"feature3_icon": "🛠️",
|
|
||||||
"feature3_title": "Technology Selection",
|
|
||||||
"feature3_desc": "แนะนำเทคโนโลยีที่เหมาะสมกับ budget และความต้องการ",
|
|
||||||
"feature4_icon": "📐",
|
|
||||||
"feature4_title": "System Architecture",
|
|
||||||
"feature4_desc": "ออกแบบระบบที่ scalable และ maintainable",
|
|
||||||
"feature5_icon": "🔧",
|
|
||||||
"feature5_title": "Implementation Support",
|
|
||||||
"feature5_desc": "ดูแลและให้คำปรึกษาตลอดการ implement",
|
|
||||||
"feature6_icon": "📈",
|
|
||||||
"feature6_title": "Performance Optimization",
|
|
||||||
"feature6_desc": "ปรับปรุงประสิทธิภาพระบบให้ดีขึ้นอย่างต่อเนื่อง"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"portfolio": [
|
|
||||||
{
|
|
||||||
"id": "portfolio-001",
|
|
||||||
"slug": "lungfinler",
|
|
||||||
"data": {
|
|
||||||
"name": "Lungfinler",
|
|
||||||
"url": "https://lungfinler.com",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/lungfinler.png",
|
|
||||||
"description": "Digital Agency - บริการด้านการสร้างแบรนด์ กราฟิกดีไซน์ และถ่ายภาพสินค้าคุณภาพสูง"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-002",
|
|
||||||
"slug": "jetindustries",
|
|
||||||
"data": {
|
|
||||||
"name": "Jet Industries",
|
|
||||||
"url": "https://jetindustries.co.th",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/jetindustries.png",
|
|
||||||
"description": "ผู้ผลิตพลาสติกฉีดขึ้นรูปอย่างแม่นยำ (Precision Plastic Injection Molding) มีประสบการณ์กว่า 40 ปี"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-003",
|
|
||||||
"slug": "lawyernoom",
|
|
||||||
"data": {
|
|
||||||
"name": "สำนักงานกฎหมาย ตถาตา",
|
|
||||||
"url": "https://lawyernoom.com",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/lawyernoom.png",
|
|
||||||
"description": "สำนักงานกฎหมายโดย ทนายความ คมสัน ศรีวนิชย์ - บริการด้านคดีความ คดีแพ่ง คดีอาญา"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-004",
|
|
||||||
"slug": "underdog",
|
|
||||||
"data": {
|
|
||||||
"name": "Underdog Marketing",
|
|
||||||
"url": "https://underdog.run",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/underdog.png",
|
|
||||||
"description": "บล็อกการตลาดและการขายสไตล์ ลุยไม่ยั้ง โดย บุ้ง ดีดติ่งหู"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-005",
|
|
||||||
"slug": "baofuling",
|
|
||||||
"data": {
|
|
||||||
"name": "Baofuling Shop",
|
|
||||||
"url": "https://baofulingshop.com",
|
|
||||||
"category": "ecommerce",
|
|
||||||
"category_label": "อีคอมเมิร์ซ",
|
|
||||||
"thumbnail": "/images/portfolio/baofuling.png",
|
|
||||||
"description": "ร้านค้าออนไลน์ครีมบัวหิมะและผลิตภัณฑ์ความงามจีน"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-006",
|
|
||||||
"slug": "trainersunny",
|
|
||||||
"data": {
|
|
||||||
"name": "เทรนเนอร์ซันนี่",
|
|
||||||
"url": "https://trainersunny.com",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/trainersunny.png",
|
|
||||||
"description": "ผู้เชี่ยวชาญด้านการพัฒนาบุคลากรและ Soft Skill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-007",
|
|
||||||
"slug": "luadjob",
|
|
||||||
"data": {
|
|
||||||
"name": "เลือดจระเข้วานิไทย",
|
|
||||||
"url": "https://เลือดจระเข้วานิไทย.com",
|
|
||||||
"category": "ecommerce",
|
|
||||||
"category_label": "อีคอมเมิร์ซ",
|
|
||||||
"thumbnail": "/images/portfolio/luadjob.png",
|
|
||||||
"description": "ตัวแทนจำหน่ายเลือดจระเข้วานิไทยอย่างเป็นทางการ"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-008",
|
|
||||||
"slug": "tuanthong",
|
|
||||||
"data": {
|
|
||||||
"name": "ทวนทอง 99",
|
|
||||||
"url": "https://tuanthong99.com",
|
|
||||||
"category": "ecommerce",
|
|
||||||
"category_label": "อีคอมเมิร์ซ",
|
|
||||||
"thumbnail": "/images/portfolio/tuanthong.png",
|
|
||||||
"description": "ร้านค้าออนไลน์สมุนไพรไทยคุณภาพสูง"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-009",
|
|
||||||
"slug": "odooportal",
|
|
||||||
"data": {
|
|
||||||
"name": "Odoo Portal",
|
|
||||||
"url": "https://odooportal.com",
|
|
||||||
"category": "marketing",
|
|
||||||
"category_label": "ที่ปรึกษาการตลาด",
|
|
||||||
"thumbnail": "/images/portfolio/odooportal.png",
|
|
||||||
"description": "ตัวแทนจำหน่าย Odoo อย่างเป็นทางการในประเทศไทย"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"faq": [
|
|
||||||
{
|
|
||||||
"id": "faq-001",
|
|
||||||
"slug": "service-001",
|
|
||||||
"data": { "category": "บริการ", "category_icon": "🎯", "question": "MoreminiMore ให้บริการอะไรบ้าง?", "answer": "เราให้บริการ 4 ประเภทหลัก: พัฒนาเว็บไซต์, Marketing Automation, AI Automation และ Tech Consult สำหรับธุรกิจไทย" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-002",
|
|
||||||
"slug": "service-002",
|
|
||||||
"data": { "category": "บริการ", "category_icon": "🎯", "question": "สามารถสั่งทำเว็บไซต์เฉพาะประเภทได้ไหม?", "answer": "ได้ เราสามารถพัฒนาเว็บไซต์ได้ทุกประเภท ไม่ว่าจะเป็นเว็บบริษัท เว็บขายของ เว็บ Landing Page หรือระบบ Web Application" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-003",
|
|
||||||
"slug": "service-003",
|
|
||||||
"data": { "category": "บริการ", "category_icon": "🎯", "question": "AI Chatbot สามารถทำอะไรได้บ้าง?", "answer": "AI Chatbot ของเราสามารถตอบคำถามลูกค้า รับออร์เดอร์ นัดหมาย และเชื่อมต่อกับระบบ CRM หรือร้านค้าออนไลน์ได้" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-004",
|
|
||||||
"slug": "price-001",
|
|
||||||
"data": { "category": "ราคา", "category_icon": "💰", "question": "ราคาเริ่มต้นของการทำเว็บไซต์เท่าไหร่?", "answer": "ราคาเริ่มต้นอยู่ที่ 15,000 บาท ขึ้นอยู่กับความซับซ้อนและฟีเจอร์ที่ต้องการ เราจะประเมินและเสนอราคาหลังจากการปรึกษาฟรี" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-005",
|
|
||||||
"slug": "price-002",
|
|
||||||
"data": { "category": "ราคา", "category_icon": "💰", "question": "มีราคาแพ็คเกจหรือไม่?", "answer": "มี เรามีแพ็คเกจสำหรับธุรกิจที่ต้องการเริ่มต้นอย่างง่ายๆ และแพ็คเกจสำหรับธุรกิจที่ต้องการระบบครบวงจร สามารถเลือกได้ตามความต้องการ" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-006",
|
|
||||||
"slug": "price-003",
|
|
||||||
"data": { "category": "ราคา", "category_icon": "💰", "question": "ชำระเงินอย่างไร?", "answer": "รองรับการชำระเงินผ่านโอนเงินธนาคาร หรือผ่อนชำระผ่านบัตรเครดิต 3-6 งวด (มีดอกเบี้ย)" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-007",
|
|
||||||
"slug": "time-001",
|
|
||||||
"data": { "category": "ระยะเวลา", "category_icon": "⏱️", "question": "ใช้เวลาพัฒนานานเท่าไหร่?", "answer": "ขึ้นอยู่กับความซับซ้อน Landing Page ใช้เวลา 1-2 สัปดาห์ เว็บไซต์ขนาดกลาง 2-4 สัปดาห์ ระบบ Web Application 4-8 สัปดาห์" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-008",
|
|
||||||
"slug": "time-002",
|
|
||||||
"data": { "category": "ระยะเวลา", "category_icon": "⏱️", "question": "ถ้าต้องการด่วนได้ไหม?", "answer": "ได้ เรามีบริการด่วนพิเศษ (เพิ่มค่าใช้จ่าย 30%) สามารถส่งมอบงานได้เร็วขึ้น 50%" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-009",
|
|
||||||
"slug": "support-001",
|
|
||||||
"data": { "category": "หลังการขาย", "category_icon": "💬", "question": "มีการรับประกันหรือไม่?", "answer": "เรารับประกันงาน 30 วันหลังส่งมอบ หากมีปัญหาจากการพัฒนา เราจะแก้ไขให้ฟรี" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-010",
|
|
||||||
"slug": "support-002",
|
|
||||||
"data": { "category": "หลังการขาย", "category_icon": "💬", "question": "มีบริการดูแลหลังการขายไหม?", "answer": "มี เรามีแพ็คเกจดูแลรายเดือนเริ่มต้นที่ 2,000 บาท/เดือน รวมการอัพเดทเนื้อหา ปรับปรุงความปลอดภัย และ Backup" }
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"blog": [
|
|
||||||
{
|
|
||||||
"id": "post-001",
|
|
||||||
"slug": "5-ways-ai-increase-sales",
|
|
||||||
"data": {
|
|
||||||
"title": "5 วิธีใช้ AI เพิ่มยอดขายให้ธุรกิจของคุณ",
|
|
||||||
"excerpt": "ค้นพบ 5 วิธีที่ AI สามารถช่วยเพิ่มยอดขายให้ธุรกิจ SMEs ไทย พร้อมตัวอย่างและแนวทางการนำไปใช้จริง",
|
|
||||||
"image": "/images/blog/5-ways-ai-increase-sales.jpg",
|
|
||||||
"date": "2026-03-11",
|
|
||||||
"category": "AI Business",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 1: ใช้ AI วิเคราะห์ลูกค้าและแนะนำสินค้าที่ตรงใจ" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "หนึ่งในความสามารถที่ทรงพลังที่สุดของ AI คือการวิเคราะห์ข้อมูลลูกค้าและค้นหารูปแบบที่มนุษย์อาจมองไม่เห็น AI สามารถวิเคราะห์ว่าลูกค้าแต่ละคนชอบสินค้าประเภทไหน ซื้อในช่วงเวลาไหน และมีพฤติกรรมการซื้ออย่างไร" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 2: ใช้ Chatbot ดูแลลูกค้าตลอด 24 ชั่วโมง" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "ลูกค้าจำนวนมากต้องการได้รับคำตอบทันที ไม่ว่าจะกี่โมง แต่การจ้างพนักงานทำงาน 24 ชั่วโมงนั้นมีค่าใช้จ่ายสูง Chatbot ที่ใช้ AI สามารถตอบคำถามลูกค้าได้ตลอดเวลา โดยไม่ต้องเสียค่าล่วงเวลา" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 3: ใช้ AI ส่งข้อความการตลาดในเวลาที่เหมาะสม" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "การส่งข้อความการตลาดไม่ใช่แค่การส่งออกไปเท่านั้น แต่ต้องส่งในเวลาที่ลูกค้ามีโอกาสอ่านและตอบสนองมากที่สุด AI สามารถวิเคราะห์ว่าลูกค้าแต่ละคนมีช่วงเวลาไหนที่เปิดอ่านข้อความบ่อยที่สุด และส่งในเวลานั้น" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 4: ใช้ AI สร้างเนื้อหาการตลาด" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "เนื้อหาการตลาดที่ดีเป็นหัวใจสำคัญในการดึงดูดลูกค้า แต่การสร้างเนื้อหาที่มีคุณภาพตลอดเวลาต้องใช้เวลาและทรัพยากรมาก AI สามารถช่วยสร้างเนื้อหาได้เร็วขึ้น ไม่ว่าจะเป็นโพสต์เฟซบุ๊ก คำบรรยายสินค้า อีเมลการตลาด หรือบทความบล็อก" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 5: ใช้ AI ทำนายแนวโน้มและวางแผนสินค้า" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "การมีสินค้าคงคลงเป็นสิ่งจำเป็นสำหรับธุรกิจค้าปลีก แต่การมีสินค้ามากเกินไปก็เป็นปัญหา AI สามารถวิเคราะห์ข้อมูลยอดขายในอดีต ฤดูกาล และปัจจัยอื่นๆ เพื่อทำนายว่าควรสั่งสินค้าเท่าไหร่ในแต่ละช่วง" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "post-002",
|
|
||||||
"slug": "ai-content-google-love",
|
|
||||||
"data": {
|
|
||||||
"title": "วิธีสร้าง Content ด้วย AI ที่ Google รัก",
|
|
||||||
"excerpt": "เรียนรู้วิธีการใช้ AI ช่วยสร้างเนื้อหาการตลาดที่มีคุณภาพและได้รับการจัดอันดับดีจาก Google พร้อมเทคนิคและตัวอย่างจริง",
|
|
||||||
"image": "/images/blog/ai-content-google-love.jpg",
|
|
||||||
"date": "2026-03-10",
|
|
||||||
"category": "AI Content",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "ทำไม AI Content ต้องมีคุณภาพ" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "Google มีอัลกอริทึมที่ฉลาดมาก สามารถแยกแยะได้ว่าเนื้อหาที่สร้างโดย AI มีคุณภาพหรือไม่ เนื้อหาที่ไม่มีคุณค่า สร้างขึ้นแค่เพื่อใส่คีย์เวิร์ด จะถูกลงโทษและไม่ติดอันดับ" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีใช้ AI สร้างเนื้อหาที่ดี" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "ใช้ AI เป็นผู้ช่วย ไม่ใช่ผู้เขียนทั้งหมด วิธีที่ดีที่สุดคือใช้ AI ช่วยในบางส่วน เช่น รวบรวมข้อมูล สร้างโครงสร้าง หรือเขียน draft แล้วนำมาปรับแก้ด้วยมนุษย์" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "post-003",
|
|
||||||
"slug": "ai-for-sme-thailand",
|
|
||||||
"data": {
|
|
||||||
"title": "AI สำหรับ SME ไทย: คู่มือฉบับสมบูรณ์",
|
|
||||||
"excerpt": "การใช้ AI สำหรับธุรกิจ SME ไทยเพื่อเพิ่มขีดความสามารถในการแข่งขัน พร้อมแนวทางปฏิบัติจริง",
|
|
||||||
"image": "/images/blog/ai-for-sme-thailand.jpg",
|
|
||||||
"date": "2026-03-08",
|
|
||||||
"category": "AI Business",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "ทำไม SME ต้องใช้ AI" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "AI ไม่ใช่เทคโนโลยีสำหรับบริษัทใหญ่เท่านั้น ธุรกิจ SME สามารถเริ่มใช้ประโยชน์จาก AI ได้ง่ายๆ ด้วยเครื่องมือที่เข้าถึงได้" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "post-004",
|
|
||||||
"slug": "digital-transformation-guide",
|
|
||||||
"data": {
|
|
||||||
"title": "คู่มือ Digital Transformation ฉบับสมบูรณ์",
|
|
||||||
"excerpt": "การ transform ธุรกิจของคุณสู่ดิจิทัลอย่างครบวงจร ตั้งแต่การวางแผนจนถึงการ Implement",
|
|
||||||
"image": "/images/blog/digital-transformation.jpg",
|
|
||||||
"date": "2026-03-05",
|
|
||||||
"category": "Business",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "Digital Transformation คืออะไร" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "Digital Transformation คือการนำเทคโนโลยีดิจิทัลมาใช้ในทุกด้านของธุรกิจ เพื่อเพิ่มประสิทธิภาพและสร้างคุณค่าใหม่ให้กับลูกค้า" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "post-005",
|
|
||||||
"slug": "marketing-automation-guide",
|
|
||||||
"data": {
|
|
||||||
"title": "Marketing Automation: คู่มือเริ่มต้น",
|
|
||||||
"excerpt": "เรียนรู้พื้นฐานของ Marketing Automation และวิธีเริ่มต้นใช้งานสำหรับธุรกิจของคุณ",
|
|
||||||
"image": "/images/blog/marketing-automation-guide.jpg",
|
|
||||||
"date": "2026-03-01",
|
|
||||||
"category": "Marketing",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "Marketing Automation คืออะไร" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "Marketing Automation คือการใช้ซอฟต์แวร์เพื่อ automate การตลาดซ้ำๆ เช่น การส่งอีเมล การโพสต์โซเชียลมีเดีย และการวิเคราะห์ข้อมูล" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
const seed = require('./seed/seed.json');
|
|
||||||
const Database = require('better-sqlite3');
|
|
||||||
const db = new Database('./data.db');
|
|
||||||
|
|
||||||
const cols = ['title','subtitle','badge','hero_image',
|
|
||||||
'feature1_icon','feature1_title','feature1_desc',
|
|
||||||
'feature2_icon','feature2_title','feature2_desc',
|
|
||||||
'feature3_icon','feature3_title','feature3_desc',
|
|
||||||
'feature4_icon','feature4_title','feature4_desc',
|
|
||||||
'feature5_icon','feature5_title','feature5_desc',
|
|
||||||
'feature6_icon','feature6_title','feature6_desc'];
|
|
||||||
|
|
||||||
const placeholders = cols.map(() => '?').join(', ');
|
|
||||||
const sql = `INSERT OR REPLACE INTO ec_services (id, slug, status, ${cols.join(', ')}, created_at, updated_at, published_at) VALUES (?, ?, 'published', ${placeholders}, datetime('now'), datetime('now'), datetime('now'))`;
|
|
||||||
|
|
||||||
console.log('Columns:', 3 + cols.length); // id, slug, status + cols
|
|
||||||
console.log('SQL placeholders:', (sql.match(/\?/g) || []).length);
|
|
||||||
|
|
||||||
db.close();
|
|
||||||
BIN
data.db-shm
BIN
data.db-shm
Binary file not shown.
116
emdash-env.d.ts
vendored
116
emdash-env.d.ts
vendored
@@ -1,116 +0,0 @@
|
|||||||
// Generated by EmDash on dev server start
|
|
||||||
// Do not edit manually
|
|
||||||
|
|
||||||
/// <reference types="emdash/locals" />
|
|
||||||
|
|
||||||
import type { ContentBylineCredit, PortableTextBlock } from "emdash";
|
|
||||||
|
|
||||||
export interface Blog {
|
|
||||||
id: string;
|
|
||||||
slug: string | null;
|
|
||||||
status: string;
|
|
||||||
title?: string;
|
|
||||||
excerpt?: string;
|
|
||||||
image?: { id: string; src?: string; alt?: string; width?: number; height?: number; provider?: string; previewUrl?: string; meta?: Record<string, unknown> };
|
|
||||||
date?: string;
|
|
||||||
category?: string;
|
|
||||||
content?: PortableTextBlock[];
|
|
||||||
createdAt: Date;
|
|
||||||
updatedAt: Date;
|
|
||||||
publishedAt: Date | null;
|
|
||||||
bylines?: ContentBylineCredit[];
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface Faq {
|
|
||||||
id: string;
|
|
||||||
slug: string | null;
|
|
||||||
status: string;
|
|
||||||
category?: string;
|
|
||||||
question?: string;
|
|
||||||
answer?: string;
|
|
||||||
createdAt: Date;
|
|
||||||
updatedAt: Date;
|
|
||||||
publishedAt: Date | null;
|
|
||||||
bylines?: ContentBylineCredit[];
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface Page {
|
|
||||||
id: string;
|
|
||||||
slug: string | null;
|
|
||||||
status: string;
|
|
||||||
title?: string;
|
|
||||||
subtitle?: string;
|
|
||||||
badge?: string;
|
|
||||||
hero_image?: { id: string; src?: string; alt?: string; width?: number; height?: number; provider?: string; previewUrl?: string; meta?: Record<string, unknown> };
|
|
||||||
theme?: string;
|
|
||||||
show_cta?: boolean;
|
|
||||||
cta_text?: string;
|
|
||||||
cta_link?: string;
|
|
||||||
variant?: string;
|
|
||||||
size?: string;
|
|
||||||
createdAt: Date;
|
|
||||||
updatedAt: Date;
|
|
||||||
publishedAt: Date | null;
|
|
||||||
bylines?: ContentBylineCredit[];
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface Portfolio {
|
|
||||||
id: string;
|
|
||||||
slug: string | null;
|
|
||||||
status: string;
|
|
||||||
name?: string;
|
|
||||||
url?: string;
|
|
||||||
category?: string;
|
|
||||||
category_label?: string;
|
|
||||||
thumbnail?: { id: string; src?: string; alt?: string; width?: number; height?: number; provider?: string; previewUrl?: string; meta?: Record<string, unknown> };
|
|
||||||
description?: string;
|
|
||||||
services?: unknown;
|
|
||||||
createdAt: Date;
|
|
||||||
updatedAt: Date;
|
|
||||||
publishedAt: Date | null;
|
|
||||||
bylines?: ContentBylineCredit[];
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface Service {
|
|
||||||
id: string;
|
|
||||||
slug: string | null;
|
|
||||||
status: string;
|
|
||||||
title?: string;
|
|
||||||
subtitle?: string;
|
|
||||||
badge?: string;
|
|
||||||
hero_image?: { id: string; src?: string; alt?: string; width?: number; height?: number; provider?: string; previewUrl?: string; meta?: Record<string, unknown> };
|
|
||||||
content?: PortableTextBlock[];
|
|
||||||
features?: unknown;
|
|
||||||
createdAt: Date;
|
|
||||||
updatedAt: Date;
|
|
||||||
publishedAt: Date | null;
|
|
||||||
bylines?: ContentBylineCredit[];
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface Setting {
|
|
||||||
id: string;
|
|
||||||
slug: string | null;
|
|
||||||
status: string;
|
|
||||||
site_name?: string;
|
|
||||||
email?: string;
|
|
||||||
phone?: string;
|
|
||||||
address?: string;
|
|
||||||
facebook?: string;
|
|
||||||
line?: string;
|
|
||||||
linkedin?: string;
|
|
||||||
createdAt: Date;
|
|
||||||
updatedAt: Date;
|
|
||||||
publishedAt: Date | null;
|
|
||||||
bylines?: ContentBylineCredit[];
|
|
||||||
}
|
|
||||||
|
|
||||||
declare module "emdash" {
|
|
||||||
interface EmDashCollections {
|
|
||||||
blog: Blog;
|
|
||||||
faq: Faq;
|
|
||||||
pages: Page;
|
|
||||||
portfolio: Portfolio;
|
|
||||||
services: Service;
|
|
||||||
settings: Setting;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
52
seed-all.cjs
52
seed-all.cjs
@@ -1,52 +0,0 @@
|
|||||||
const seed = require('./seed/seed.json');
|
|
||||||
const Database = require('better-sqlite3');
|
|
||||||
const db = new Database('./data.db');
|
|
||||||
|
|
||||||
// Helper to get current timestamp
|
|
||||||
const now = new Date().toISOString();
|
|
||||||
|
|
||||||
// 1. Seed Pages
|
|
||||||
const insertPage = db.prepare(`
|
|
||||||
INSERT OR REPLACE INTO ec_pages (id, slug, status, locale, title, subtitle, badge, hero_image, theme, show_cta, cta_text, cta_link, variant, size, created_at, updated_at, published_at)
|
|
||||||
VALUES (?, ?, 'published', 'th', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
||||||
`);
|
|
||||||
(seed.content?.pages || []).forEach(p => {
|
|
||||||
insertPage.run(p.id, p.slug, p.data.title, p.data.subtitle, p.data.badge, p.data.hero_image, p.data.theme, p.data.show_cta ? 1 : 0, p.data.cta_text, p.data.cta_link, p.data.variant, p.data.size, now, now, now);
|
|
||||||
});
|
|
||||||
console.log('Pages seeded:', db.prepare('SELECT COUNT(*) as c FROM ec_pages').get().c);
|
|
||||||
|
|
||||||
// 2. Seed Portfolio
|
|
||||||
const insertPortfolio = db.prepare(`
|
|
||||||
INSERT OR REPLACE INTO ec_portfolio (id, slug, status, locale, name, url, category, category_label, thumbnail, description, created_at, updated_at, published_at)
|
|
||||||
VALUES (?, ?, 'published', 'th', ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
||||||
`);
|
|
||||||
(seed.content?.portfolio || []).forEach((p, i) => {
|
|
||||||
const pid = p.id || `portfolio-${String(i + 1).padStart(3, '0')}`;
|
|
||||||
insertPortfolio.run(pid, p.slug, p.data.name, p.data.url, p.data.category, p.data.category_label, p.data.thumbnail, p.data.description, now, now, now);
|
|
||||||
});
|
|
||||||
console.log('Portfolio seeded:', db.prepare('SELECT COUNT(*) as c FROM ec_portfolio').get().c);
|
|
||||||
|
|
||||||
// 3. Seed Blog
|
|
||||||
const insertBlog = db.prepare(`
|
|
||||||
INSERT OR REPLACE INTO ec_blog (id, slug, status, locale, title, excerpt, image, date, category, content, created_at, updated_at, published_at)
|
|
||||||
VALUES (?, ?, 'published', 'th', ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
||||||
`);
|
|
||||||
(seed.content?.blog || []).forEach((p, i) => {
|
|
||||||
const bid = p.id || `blog-${String(i + 1).padStart(3, '0')}`;
|
|
||||||
insertBlog.run(bid, p.slug, p.data.title, p.data.excerpt, p.data.image, p.data.date, p.data.category, JSON.stringify(p.data.content), now, now, now);
|
|
||||||
});
|
|
||||||
console.log('Blog seeded:', db.prepare('SELECT COUNT(*) as c FROM ec_blog').get().c);
|
|
||||||
|
|
||||||
// 4. Seed FAQ
|
|
||||||
const insertFaq = db.prepare(`
|
|
||||||
INSERT OR REPLACE INTO ec_faq (id, slug, status, locale, category, question, answer, created_at, updated_at)
|
|
||||||
VALUES (?, ?, 'published', 'th', ?, ?, ?, ?, ?)
|
|
||||||
`);
|
|
||||||
(seed.content?.faq || []).forEach((p, i) => {
|
|
||||||
const fid = p.id || `faq-${String(i + 1).padStart(3, '0')}`;
|
|
||||||
insertFaq.run(fid, p.slug || fid, p.data.category, p.data.question, p.data.answer, now, now);
|
|
||||||
});
|
|
||||||
console.log('FAQ seeded:', db.prepare('SELECT COUNT(*) as c FROM ec_faq').get().c);
|
|
||||||
|
|
||||||
db.close();
|
|
||||||
console.log('All seeding complete!');
|
|
||||||
14
seed-db.cjs
14
seed-db.cjs
@@ -1,14 +0,0 @@
|
|||||||
const seed = require('./seed/seed.json');
|
|
||||||
const Database = require('better-sqlite3');
|
|
||||||
const db = new Database('./data.db');
|
|
||||||
|
|
||||||
// Only seed pages for now
|
|
||||||
const insertPage = db.prepare(
|
|
||||||
"INSERT OR REPLACE INTO ec_pages (id, slug, status, title, subtitle, badge, hero_image, theme, show_cta, cta_text, cta_link, variant, size, created_at, updated_at, published_at) VALUES (?, ?, 'published', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, datetime('now'), datetime('now'), datetime('now'))"
|
|
||||||
);
|
|
||||||
(seed.content?.pages || []).forEach(p => {
|
|
||||||
insertPage.run(p.id, p.slug, p.data.title, p.data.subtitle, p.data.badge, p.data.hero_image, p.data.theme, p.data.show_cta ? 1 : 0, p.data.cta_text, p.data.cta_link, p.data.variant, p.data.size);
|
|
||||||
});
|
|
||||||
console.log('Pages:', db.prepare('SELECT COUNT(*) as c FROM ec_pages').get().c);
|
|
||||||
db.close();
|
|
||||||
console.log('Done');
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
const seed = require('./seed/seed.json');
|
|
||||||
const Database = require('better-sqlite3');
|
|
||||||
const db = new Database('./data.db');
|
|
||||||
|
|
||||||
const cols = ['title','subtitle','badge','category','objective','hero_image',
|
|
||||||
'usp_free_server','usp_content_edit',
|
|
||||||
'feature1_icon','feature1_title','feature1_desc',
|
|
||||||
'feature2_icon','feature2_title','feature2_desc',
|
|
||||||
'feature3_icon','feature3_title','feature3_desc',
|
|
||||||
'feature4_icon','feature4_title','feature4_desc',
|
|
||||||
'feature5_icon','feature5_title','feature5_desc',
|
|
||||||
'feature6_icon','feature6_title','feature6_desc'];
|
|
||||||
|
|
||||||
const placeholders = cols.map(() => '?').join(', ');
|
|
||||||
const sql = `INSERT OR REPLACE INTO ec_services (id, slug, status, ${cols.join(', ')}, created_at, updated_at, published_at) VALUES (?, ?, 'published', ${placeholders}, datetime('now'), datetime('now'), datetime('now'))`;
|
|
||||||
|
|
||||||
const insertService = db.prepare(sql);
|
|
||||||
|
|
||||||
(seed.content?.services || []).forEach(s => {
|
|
||||||
const vals = [s.id, s.slug];
|
|
||||||
cols.forEach(c => vals.push(s.data[c] ?? null));
|
|
||||||
insertService.run(...vals);
|
|
||||||
});
|
|
||||||
console.log('Services:', db.prepare('SELECT COUNT(*) as c FROM ec_services').get().c);
|
|
||||||
db.close();
|
|
||||||
console.log('Done');
|
|
||||||
598
seed/seed.json
598
seed/seed.json
@@ -1,598 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "1",
|
|
||||||
"collections": [
|
|
||||||
{
|
|
||||||
"slug": "pages",
|
|
||||||
"label": "Pages",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "title", "type": "string", "label": "Title" },
|
|
||||||
{ "slug": "subtitle", "type": "string", "label": "Subtitle" },
|
|
||||||
{ "slug": "badge", "type": "string", "label": "Badge" },
|
|
||||||
{ "slug": "hero_image", "type": "image", "label": "Hero Image" },
|
|
||||||
{ "slug": "theme", "type": "select", "label": "Theme", "options": ["yellow", "accent"] },
|
|
||||||
{ "slug": "show_cta", "type": "boolean", "label": "Show CTA" },
|
|
||||||
{ "slug": "cta_text", "type": "string", "label": "CTA Text" },
|
|
||||||
{ "slug": "cta_link", "type": "string", "label": "CTA Link" },
|
|
||||||
{ "slug": "variant", "type": "select", "label": "Hero Variant", "options": ["split", "centered", "text_only", "floating_cards"] },
|
|
||||||
{ "slug": "size", "type": "select", "label": "Hero Size", "options": ["full", "compact"] }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "services",
|
|
||||||
"label": "Services",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "title", "type": "string", "label": "Title" },
|
|
||||||
{ "slug": "subtitle", "type": "string", "label": "Subtitle" },
|
|
||||||
{ "slug": "badge", "type": "string", "label": "Badge" },
|
|
||||||
{ "slug": "category", "type": "select", "label": "Category", "options": ["tech-consult", "marketing-consult"] },
|
|
||||||
{ "slug": "objective", "type": "string", "label": "Objective (Headline)" },
|
|
||||||
{ "slug": "hero_image", "type": "image", "label": "Hero Image" },
|
|
||||||
{ "slug": "usp_free_server", "type": "string", "label": "USP: Free Server Description" },
|
|
||||||
{ "slug": "usp_content_edit", "type": "string", "label": "USP: Free Content Edit Description" },
|
|
||||||
{ "slug": "content", "type": "portableText", "label": "Content" },
|
|
||||||
{
|
|
||||||
"slug": "features",
|
|
||||||
"type": "repeater",
|
|
||||||
"label": "Features",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "icon", "type": "string", "label": "Icon" },
|
|
||||||
{ "slug": "feature_title", "type": "string", "label": "Title" },
|
|
||||||
{ "slug": "description", "type": "string", "label": "Description" }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "portfolio",
|
|
||||||
"label": "Portfolio",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "name", "type": "string", "label": "Name" },
|
|
||||||
{ "slug": "url", "type": "url", "label": "URL" },
|
|
||||||
{ "slug": "category", "type": "select", "label": "Category", "options": ["webdev", "ecommerce", "marketing"] },
|
|
||||||
{ "slug": "category_label", "type": "string", "label": "Category Label" },
|
|
||||||
{ "slug": "thumbnail", "type": "image", "label": "Thumbnail" },
|
|
||||||
{ "slug": "description", "type": "text", "label": "Description" },
|
|
||||||
{
|
|
||||||
"slug": "services",
|
|
||||||
"type": "repeater",
|
|
||||||
"label": "Services",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "service_name", "type": "string", "label": "Name" }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "blog",
|
|
||||||
"label": "Blog",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "title", "type": "string", "label": "Title" },
|
|
||||||
{ "slug": "excerpt", "type": "string", "label": "Excerpt" },
|
|
||||||
{ "slug": "image", "type": "image", "label": "Image" },
|
|
||||||
{ "slug": "date", "type": "datetime", "label": "Date" },
|
|
||||||
{ "slug": "category", "type": "string", "label": "Category" },
|
|
||||||
{ "slug": "content", "type": "portableText", "label": "Content" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "faq",
|
|
||||||
"label": "FAQ",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "category", "type": "string", "label": "Category" },
|
|
||||||
{ "slug": "question", "type": "string", "label": "Question" },
|
|
||||||
{ "slug": "answer", "type": "text", "label": "Answer" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"slug": "settings",
|
|
||||||
"label": "Site Settings",
|
|
||||||
"fields": [
|
|
||||||
{ "slug": "site_name", "type": "string", "label": "Site Name" },
|
|
||||||
{ "slug": "email", "type": "string", "label": "Contact Email" },
|
|
||||||
{ "slug": "phone", "type": "string", "label": "Contact Phone" },
|
|
||||||
{ "slug": "address", "type": "text", "label": "Address" },
|
|
||||||
{ "slug": "facebook", "type": "url", "label": "Facebook URL" },
|
|
||||||
{ "slug": "line", "type": "url", "label": "LINE URL" },
|
|
||||||
{ "slug": "linkedin", "type": "url", "label": "LinkedIn URL" }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"content": {
|
|
||||||
"pages": [
|
|
||||||
{
|
|
||||||
"id": "page-home",
|
|
||||||
"slug": "home",
|
|
||||||
"data": {
|
|
||||||
"title": "เปลี่ยนธุรกิจของคุณ ด้วย AI และเทคโนโลยีสมัยใหม่",
|
|
||||||
"subtitle": "รับทำเว็บไซต์ SEO AI Chatbot สำหรับธุรกิจไทย<br>เพิ่มยอดขาย ลดต้นทุน ด้วยเทคโนโลยีล้ำสมัย",
|
|
||||||
"badge": "ดิจิทัลเอเจนซี่ในประเทศไทย",
|
|
||||||
"hero_image": "/images/hero/hero.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "split",
|
|
||||||
"size": "full",
|
|
||||||
"show_cta": true,
|
|
||||||
"cta_text": "เริ่มต้นวันนี้",
|
|
||||||
"cta_link": "/contact"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-about",
|
|
||||||
"slug": "about",
|
|
||||||
"data": {
|
|
||||||
"title": "เกี่ยวกับ มอร์มินิมอร์",
|
|
||||||
"subtitle": "บริษัท มอร์มินิมอร์ จำกัด<br>รับทำเว็บไซต์ SEO AI Chatbot สำหรับธุรกิจไทย",
|
|
||||||
"badge": "เกี่ยวกับเรา",
|
|
||||||
"hero_image": "/images/hero/about.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "centered",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-portfolio",
|
|
||||||
"slug": "portfolio",
|
|
||||||
"data": {
|
|
||||||
"title": "ผลงานของเรา",
|
|
||||||
"subtitle": "รวมผลงานพัฒนาเว็บไซต์และโปรเจกต์ที่เราภาคภูมิใจ",
|
|
||||||
"badge": "พอร์ตโฟลิโอ",
|
|
||||||
"hero_image": "/images/hero/hero.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "text-only",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-contact",
|
|
||||||
"slug": "contact",
|
|
||||||
"data": {
|
|
||||||
"title": "พูดคุยกับเรา วันนี้เลย!",
|
|
||||||
"subtitle": "พร้อมให้คำปรึกษาและช่วยเหลือคุณ<br>ปรึกษาฟรี ไม่มีค่าใช้จ่าย",
|
|
||||||
"badge": "ติดต่อเรา",
|
|
||||||
"hero_image": "/images/hero/contact.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "text-only",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-faq",
|
|
||||||
"slug": "faq",
|
|
||||||
"data": {
|
|
||||||
"title": "คำถามที่พบบ่อย",
|
|
||||||
"subtitle": "หาคำตอบสำหรับคำถามที่พบบ่อยเกี่ยวกับบริการของเรา",
|
|
||||||
"badge": "FAQ",
|
|
||||||
"hero_image": "/images/hero/tech-consult.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "centered",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-privacy",
|
|
||||||
"slug": "privacy",
|
|
||||||
"data": {
|
|
||||||
"title": "นโยบายความเป็นส่วนตัว",
|
|
||||||
"subtitle": "มีผลบังคับใช้วันที่ 5 พฤษภาคม 2569",
|
|
||||||
"badge": "กฎหมาย",
|
|
||||||
"hero_image": "/images/hero/ai-automation.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "text-only",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "page-terms",
|
|
||||||
"slug": "terms",
|
|
||||||
"data": {
|
|
||||||
"title": "เงื่อนไขการให้บริการ",
|
|
||||||
"subtitle": "มีผลบังคับใช้วันที่ 5 พฤษภาคม 2569",
|
|
||||||
"badge": "กฎหมาย",
|
|
||||||
"hero_image": "/images/hero/marketing-automation.jpg",
|
|
||||||
"theme": "yellow",
|
|
||||||
"variant": "text-only",
|
|
||||||
"size": "compact",
|
|
||||||
"show_cta": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"services": [
|
|
||||||
{
|
|
||||||
"id": "service-automation",
|
|
||||||
"slug": "automation",
|
|
||||||
"data": {
|
|
||||||
"title": "Automation Consult",
|
|
||||||
"subtitle": "Implement specific unique app and AI for business to do automation workflow. ลดต้นทุนและเพิ่มประสิทธิภาพด้วยระบบอัตโนมัติที่ออกแบบมาเฉพาะสำหรับธุรกิจของคุณ",
|
|
||||||
"badge": "Technology Consult",
|
|
||||||
"category": "tech-consult",
|
|
||||||
"objective": "ลดต้นทุนและเวลา",
|
|
||||||
"hero_image": "/images/hero/automation-consult-hero.jpg",
|
|
||||||
"usp_free_server": "ลูกค้าที่ใช้บริการ Consult จะได้รับ Server สำหรับ App และ AI ฟรี (สำหรับการใช้งานปกติ) หากต้องการใช้งานหนักหรือ Resource-intensive จะมีค่าใช้จ่ายเพิ่มเติม",
|
|
||||||
"usp_content_edit": "",
|
|
||||||
"feature1_icon": "🤖",
|
|
||||||
"feature1_title": "Workflow Automation",
|
|
||||||
"feature1_desc": "ออกแบบและ implement ระบบ automation สำหรับงานที่ทำซ้ำๆ เช่น การประมวลผลออร์เดอร์ การจัดการ inventory",
|
|
||||||
"feature2_icon": "📊",
|
|
||||||
"feature2_title": "Business Process Optimization",
|
|
||||||
"feature2_desc": "วิเคราะห์และปรับปรุงกระบวนการทำงานให้มีประสิทธิภาพมากขึ้นด้วยเทคโนโลยีล่าสุด",
|
|
||||||
"feature3_icon": "🔗",
|
|
||||||
"feature3_title": "System Integration",
|
|
||||||
"feature3_desc": "เชื่อมต่อระบบต่างๆ ให้ทำงานร่วมกันอย่างราบรื่น เช่น CRM, ERP, E-commerce",
|
|
||||||
"feature4_icon": "📱",
|
|
||||||
"feature4_title": "Custom Application",
|
|
||||||
"feature4_desc": "พัฒนา application เฉพาะทางสำหรับธุรกิจของคุณที่ไม่สามารถหาซื้อได้ทั่วไป",
|
|
||||||
"feature5_icon": "🔒",
|
|
||||||
"feature5_title": "Security & Compliance",
|
|
||||||
"feature5_desc": "ตรวจสอบและปรับปรุงความปลอดภัยของระบบให้เป็นไปตามมาตรฐาน",
|
|
||||||
"feature6_icon": "📈",
|
|
||||||
"feature6_title": "Performance Monitoring",
|
|
||||||
"feature6_desc": "ติดตามและวัดผลประสิทธิภาพของระบบแบบ real-time"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "service-ai-consult",
|
|
||||||
"slug": "ai-consult",
|
|
||||||
"data": {
|
|
||||||
"title": "AI Consult",
|
|
||||||
"subtitle": "Consult service for using AI to improve business workflow and knowledge management. ใช้ AI ให้เป็นประโยชน์สำหรับธุรกิจของคุณอย่างเต็มศักยภาพ",
|
|
||||||
"badge": "Technology Consult",
|
|
||||||
"category": "tech-consult",
|
|
||||||
"objective": "ลดต้นทุนและเวลา",
|
|
||||||
"hero_image": "/images/hero/ai-consult-hero.jpg",
|
|
||||||
"usp_free_server": "ลูกค้าที่ใช้บริการ Consult จะได้รับ Server สำหรับ App และ AI ฟรี (สำหรับการใช้งานปกติ) หากต้องการใช้งานหนักหรือ Resource-intensive จะมีค่าใช้จ่ายเพิ่มเติม",
|
|
||||||
"usp_content_edit": "",
|
|
||||||
"feature1_icon": "🧠",
|
|
||||||
"feature1_title": "AI Strategy & Roadmap",
|
|
||||||
"feature1_desc": "วางแผนการใช้ AI อย่างเป็นระบบเพื่อให้เห็นผลลัพธ์ที่ชัดเจน",
|
|
||||||
"feature2_icon": "💬",
|
|
||||||
"feature2_title": "AI Chatbot Implementation",
|
|
||||||
"feature2_desc": "พัฒนาและ deploy AI Chatbot ที่เข้าใจภาษาไทยและตอบคำถามลูกค้าได้ 24/7",
|
|
||||||
"feature3_icon": "📝",
|
|
||||||
"feature3_title": "Knowledge Management",
|
|
||||||
"feature3_desc": "สร้างระบบจัดการความรู้ด้วย AI ที่ช่วยให้การค้นหาและใช้งานข้อมูลง่ายขึ้น",
|
|
||||||
"feature4_icon": "🎯",
|
|
||||||
"feature4_title": "AI for Marketing",
|
|
||||||
"feature4_desc": "ใช้ AI วิเคราะห์ลูกค้าและสร้างแคมเปญการตลาดที่มีประสิทธิภาพ",
|
|
||||||
"feature5_icon": "🔍",
|
|
||||||
"feature5_title": "AI Audit",
|
|
||||||
"feature5_desc": "วิเคราะห์ว่าธุรกิจของคุณควรใช้ AI ตัวไหนและอย่างไร",
|
|
||||||
"feature6_icon": "🚀",
|
|
||||||
"feature6_title": "AI Implementation Support",
|
|
||||||
"feature6_desc": "ดูแลและให้คำปรึกษาตลอดการ implement AI ในองค์กร"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "service-online-marketing",
|
|
||||||
"slug": "online-marketing",
|
|
||||||
"data": {
|
|
||||||
"title": "Online Marketing Automation",
|
|
||||||
"subtitle": "Use AI to help generate and manage marketing workflow. เพิ่มยอดขายด้วยระบบอัตโนมัติทางการตลาดที่ขับเคลื่อนด้วย AI",
|
|
||||||
"badge": "Marketing Consult",
|
|
||||||
"category": "marketing-consult",
|
|
||||||
"objective": "เพิ่มยอดขาย",
|
|
||||||
"hero_image": "/images/hero/online-marketing-hero.jpg",
|
|
||||||
"usp_free_server": "",
|
|
||||||
"usp_content_edit": "",
|
|
||||||
"feature1_icon": "📧",
|
|
||||||
"feature1_title": "Email Marketing Automation",
|
|
||||||
"feature1_desc": "สร้าง email campaign อัตโนมัติด้วย AI ที่ personalize ข้อความตามพฤติกรรมลูกค้า",
|
|
||||||
"feature2_icon": "💬",
|
|
||||||
"feature2_title": "Social Media Automation",
|
|
||||||
"feature2_desc": "กำหนดเวลาโพสต์และตอบสนองอัตโนมัติด้วย AI ที่เข้าใจบริบท",
|
|
||||||
"feature3_icon": "🎯",
|
|
||||||
"feature3_title": "Lead Generation AI",
|
|
||||||
"feature3_desc": "ใช้ AI หาและให้คะแนน leads ที่มีโอกาส conversion สูงสุด",
|
|
||||||
"feature4_icon": "📊",
|
|
||||||
"feature4_title": "Marketing Analytics",
|
|
||||||
"feature4_desc": "วิเคราะห์ข้อมูลการตลาดและให้คำแนะนำด้วย AI เพื่อปรับปรุง ROI",
|
|
||||||
"feature5_icon": "🔄",
|
|
||||||
"feature5_title": "Workflow Automation",
|
|
||||||
"feature5_desc": "สร้าง marketing workflow อัตโนมัติตั้งแต่ lead จนถึง sale",
|
|
||||||
"feature6_icon": "📱",
|
|
||||||
"feature6_title": "Multi-channel Integration",
|
|
||||||
"feature6_desc": "เชื่อมต่อทุกช่องทางการตลาดให้ทำงานร่วมกันอย่างไร้รอยต่อ"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "service-webdev",
|
|
||||||
"slug": "webdev",
|
|
||||||
"data": {
|
|
||||||
"title": "Website Development",
|
|
||||||
"subtitle": "Implement website for business and integrate the website with marketing workflow. เว็บไซต์ที่ทันสมัย รวดเร็ว และเชื่อมต่อกับระบบการตลาดอย่างไร้รอยต่อ",
|
|
||||||
"badge": "Marketing Consult",
|
|
||||||
"category": "marketing-consult",
|
|
||||||
"objective": "เพิ่มยอดขาย",
|
|
||||||
"hero_image": "/images/hero/web-development-hero.jpg",
|
|
||||||
"usp_free_server": "",
|
|
||||||
"usp_content_edit": "ลูกค้าที่ใช้ Server ของเราจะได้รับบริการแก้ไขและเพิ่มเนื้อหาเว็บไซต์ฟรี! จ่ายเฉพาะเมื่อต้องการ Redesign ทั้งหมด หรือ Upgrade ฟีเจอร์ใหญ่ เช่น เพิ่มระบบ E-commerce",
|
|
||||||
"feature1_icon": "⚡",
|
|
||||||
"feature1_title": "Fast & Modern",
|
|
||||||
"feature1_desc": "โหลดเร็ว รองรับการขยายตัวของธุรกิจ และใช้เทคโนโลยีล่าสุด",
|
|
||||||
"feature2_icon": "📱",
|
|
||||||
"feature2_title": "Responsive Design",
|
|
||||||
"feature2_desc": "แสดงผลได้ดีบนทุกอุปกรณ์ ทั้ง mobile tablet และ desktop",
|
|
||||||
"feature3_icon": "🎨",
|
|
||||||
"feature3_title": "SEO Optimized",
|
|
||||||
"feature3_desc": "ออกแบบมาเพื่อให้ Google ชอบ ช่วยให้ติดอันดับได้ง่ายขึ้น",
|
|
||||||
"feature4_icon": "🔗",
|
|
||||||
"feature4_title": "Marketing Integration",
|
|
||||||
"feature4_desc": "เชื่อมต่อกับระบบ CRM, Email Marketing และ Analytics ได้อย่างไร้รอยต่อ",
|
|
||||||
"feature5_icon": "📊",
|
|
||||||
"feature5_title": "Analytics Dashboard",
|
|
||||||
"feature5_desc": "ติดตามผู้เข้าชมและวัดผลได้แบบ real-time",
|
|
||||||
"feature6_icon": "🔒",
|
|
||||||
"feature6_title": "Security",
|
|
||||||
"feature6_desc": "Security ระดับสูง ป้องกันการโจมตีและข้อมูลรั่วไหล"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"portfolio": [
|
|
||||||
{
|
|
||||||
"id": "portfolio-001",
|
|
||||||
"slug": "lungfinler",
|
|
||||||
"data": {
|
|
||||||
"name": "Lungfinler",
|
|
||||||
"url": "https://lungfinler.com",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/lungfinler.png",
|
|
||||||
"description": "Digital Agency - บริการด้านการสร้างแบรนด์ กราฟิกดีไซน์ และถ่ายภาพสินค้าคุณภาพสูง"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-002",
|
|
||||||
"slug": "jetindustries",
|
|
||||||
"data": {
|
|
||||||
"name": "Jet Industries",
|
|
||||||
"url": "https://jetindustries.co.th",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/jetindustries.png",
|
|
||||||
"description": "ผู้ผลิตพลาสติกฉีดขึ้นรูปอย่างแม่นยำ (Precision Plastic Injection Molding) มีประสบการณ์กว่า 40 ปี"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-003",
|
|
||||||
"slug": "lawyernoom",
|
|
||||||
"data": {
|
|
||||||
"name": "สำนักงานกฎหมาย ตถาตา",
|
|
||||||
"url": "https://lawyernoom.com",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/lawyernoom.png",
|
|
||||||
"description": "สำนักงานกฎหมายโดย ทนายความ คมสัน ศรีวนิชย์ - บริการด้านคดีความ คดีแพ่ง คดีอาญา"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-004",
|
|
||||||
"slug": "underdog",
|
|
||||||
"data": {
|
|
||||||
"name": "Underdog Marketing",
|
|
||||||
"url": "https://underdog.run",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/underdog.png",
|
|
||||||
"description": "บล็อกการตลาดและการขายสไตล์ ลุยไม่ยั้ง โดย บุ้ง ดีดติ่งหู"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-005",
|
|
||||||
"slug": "baofuling",
|
|
||||||
"data": {
|
|
||||||
"name": "Baofuling Shop",
|
|
||||||
"url": "https://baofulingshop.com",
|
|
||||||
"category": "ecommerce",
|
|
||||||
"category_label": "อีคอมเมิร์ซ",
|
|
||||||
"thumbnail": "/images/portfolio/baofuling.png",
|
|
||||||
"description": "ร้านค้าออนไลน์ครีมบัวหิมะและผลิตภัณฑ์ความงามจีน"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-006",
|
|
||||||
"slug": "trainersunny",
|
|
||||||
"data": {
|
|
||||||
"name": "เทรนเนอร์ซันนี่",
|
|
||||||
"url": "https://trainersunny.com",
|
|
||||||
"category": "webdev",
|
|
||||||
"category_label": "พัฒนาเว็บไซต์",
|
|
||||||
"thumbnail": "/images/portfolio/trainersunny.png",
|
|
||||||
"description": "ผู้เชี่ยวชาญด้านการพัฒนาบุคลากรและ Soft Skill"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-007",
|
|
||||||
"slug": "luadjob",
|
|
||||||
"data": {
|
|
||||||
"name": "เลือดจระเข้วานิไทย",
|
|
||||||
"url": "https://เลือดจระเข้วานิไทย.com",
|
|
||||||
"category": "ecommerce",
|
|
||||||
"category_label": "อีคอมเมิร์ซ",
|
|
||||||
"thumbnail": "/images/portfolio/luadjob.png",
|
|
||||||
"description": "ตัวแทนจำหน่ายเลือดจระเข้วานิไทยอย่างเป็นทางการ"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-008",
|
|
||||||
"slug": "tuanthong",
|
|
||||||
"data": {
|
|
||||||
"name": "ทวนทอง 99",
|
|
||||||
"url": "https://tuanthong99.com",
|
|
||||||
"category": "ecommerce",
|
|
||||||
"category_label": "อีคอมเมิร์ซ",
|
|
||||||
"thumbnail": "/images/portfolio/tuanthong.png",
|
|
||||||
"description": "ร้านค้าออนไลน์สมุนไพรไทยคุณภาพสูง"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "portfolio-009",
|
|
||||||
"slug": "odooportal",
|
|
||||||
"data": {
|
|
||||||
"name": "Odoo Portal",
|
|
||||||
"url": "https://odooportal.com",
|
|
||||||
"category": "marketing",
|
|
||||||
"category_label": "ที่ปรึกษาการตลาด",
|
|
||||||
"thumbnail": "/images/portfolio/odooportal.png",
|
|
||||||
"description": "ตัวแทนจำหน่าย Odoo อย่างเป็นทางการในประเทศไทย"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"faq": [
|
|
||||||
{
|
|
||||||
"id": "faq-001",
|
|
||||||
"slug": "service-001",
|
|
||||||
"data": { "category": "บริการ", "category_icon": "🎯", "question": "MoreminiMore ให้บริการอะไรบ้าง?", "answer": "เราให้บริการ 4 ประเภทหลัก: พัฒนาเว็บไซต์, Marketing Automation, AI Automation และ Tech Consult สำหรับธุรกิจไทย" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-002",
|
|
||||||
"slug": "service-002",
|
|
||||||
"data": { "category": "บริการ", "category_icon": "🎯", "question": "สามารถสั่งทำเว็บไซต์เฉพาะประเภทได้ไหม?", "answer": "ได้ เราสามารถพัฒนาเว็บไซต์ได้ทุกประเภท ไม่ว่าจะเป็นเว็บบริษัท เว็บขายของ เว็บ Landing Page หรือระบบ Web Application" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-003",
|
|
||||||
"slug": "service-003",
|
|
||||||
"data": { "category": "บริการ", "category_icon": "🎯", "question": "AI Chatbot สามารถทำอะไรได้บ้าง?", "answer": "AI Chatbot ของเราสามารถตอบคำถามลูกค้า รับออร์เดอร์ นัดหมาย และเชื่อมต่อกับระบบ CRM หรือร้านค้าออนไลน์ได้" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-004",
|
|
||||||
"slug": "price-001",
|
|
||||||
"data": { "category": "ราคา", "category_icon": "💰", "question": "ราคาเริ่มต้นของการทำเว็บไซต์เท่าไหร่?", "answer": "ราคาเริ่มต้นอยู่ที่ 15,000 บาท ขึ้นอยู่กับความซับซ้อนและฟีเจอร์ที่ต้องการ เราจะประเมินและเสนอราคาหลังจากการปรึกษาฟรี" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-005",
|
|
||||||
"slug": "price-002",
|
|
||||||
"data": { "category": "ราคา", "category_icon": "💰", "question": "มีราคาแพ็คเกจหรือไม่?", "answer": "มี เรามีแพ็คเกจสำหรับธุรกิจที่ต้องการเริ่มต้นอย่างง่ายๆ และแพ็คเกจสำหรับธุรกิจที่ต้องการระบบครบวงจร สามารถเลือกได้ตามความต้องการ" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-006",
|
|
||||||
"slug": "price-003",
|
|
||||||
"data": { "category": "ราคา", "category_icon": "💰", "question": "ชำระเงินอย่างไร?", "answer": "รองรับการชำระเงินผ่านโอนเงินธนาคาร หรือผ่อนชำระผ่านบัตรเครดิต 3-6 งวด (มีดอกเบี้ย)" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-007",
|
|
||||||
"slug": "time-001",
|
|
||||||
"data": { "category": "ระยะเวลา", "category_icon": "⏱️", "question": "ใช้เวลาพัฒนานานเท่าไหร่?", "answer": "ขึ้นอยู่กับความซับซ้อน Landing Page ใช้เวลา 1-2 สัปดาห์ เว็บไซต์ขนาดกลาง 2-4 สัปดาห์ ระบบ Web Application 4-8 สัปดาห์" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-008",
|
|
||||||
"slug": "time-002",
|
|
||||||
"data": { "category": "ระยะเวลา", "category_icon": "⏱️", "question": "ถ้าต้องการด่วนได้ไหม?", "answer": "ได้ เรามีบริการด่วนพิเศษ (เพิ่มค่าใช้จ่าย 30%) สามารถส่งมอบงานได้เร็วขึ้น 50%" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-009",
|
|
||||||
"slug": "support-001",
|
|
||||||
"data": { "category": "หลังการขาย", "category_icon": "💬", "question": "มีการรับประกันหรือไม่?", "answer": "เรารับประกันงาน 30 วันหลังส่งมอบ หากมีปัญหาจากการพัฒนา เราจะแก้ไขให้ฟรี" }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "faq-010",
|
|
||||||
"slug": "support-002",
|
|
||||||
"data": { "category": "หลังการขาย", "category_icon": "💬", "question": "มีบริการดูแลหลังการขายไหม?", "answer": "มี เรามีแพ็คเกจดูแลรายเดือนเริ่มต้นที่ 2,000 บาท/เดือน รวมการอัพเดทเนื้อหา ปรับปรุงความปลอดภัย และ Backup" }
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"blog": [
|
|
||||||
{
|
|
||||||
"id": "post-001",
|
|
||||||
"slug": "5-ways-ai-increase-sales",
|
|
||||||
"data": {
|
|
||||||
"title": "5 วิธีใช้ AI เพิ่มยอดขายให้ธุรกิจของคุณ",
|
|
||||||
"excerpt": "ค้นพบ 5 วิธีที่ AI สามารถช่วยเพิ่มยอดขายให้ธุรกิจ SMEs ไทย พร้อมตัวอย่างและแนวทางการนำไปใช้จริง",
|
|
||||||
"image": "/images/blog/5-ways-ai-increase-sales.jpg",
|
|
||||||
"date": "2026-03-11",
|
|
||||||
"category": "AI Business",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 1: ใช้ AI วิเคราะห์ลูกค้าและแนะนำสินค้าที่ตรงใจ" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "หนึ่งในความสามารถที่ทรงพลังที่สุดของ AI คือการวิเคราะห์ข้อมูลลูกค้าและค้นหารูปแบบที่มนุษย์อาจมองไม่เห็น AI สามารถวิเคราะห์ว่าลูกค้าแต่ละคนชอบสินค้าประเภทไหน ซื้อในช่วงเวลาไหน และมีพฤติกรรมการซื้ออย่างไร" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 2: ใช้ Chatbot ดูแลลูกค้าตลอด 24 ชั่วโมง" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "ลูกค้าจำนวนมากต้องการได้รับคำตอบทันที ไม่ว่าจะกี่โมง แต่การจ้างพนักงานทำงาน 24 ชั่วโมงนั้นมีค่าใช้จ่ายสูง Chatbot ที่ใช้ AI สามารถตอบคำถามลูกค้าได้ตลอดเวลา โดยไม่ต้องเสียค่าล่วงเวลา" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 3: ใช้ AI ส่งข้อความการตลาดในเวลาที่เหมาะสม" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "การส่งข้อความการตลาดไม่ใช่แค่การส่งออกไปเท่านั้น แต่ต้องส่งในเวลาที่ลูกค้ามีโอกาสอ่านและตอบสนองมากที่สุด AI สามารถวิเคราะห์ว่าลูกค้าแต่ละคนมีช่วงเวลาไหนที่เปิดอ่านข้อความบ่อยที่สุด และส่งในเวลานั้น" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 4: ใช้ AI สร้างเนื้อหาการตลาด" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "เนื้อหาการตลาดที่ดีเป็นหัวใจสำคัญในการดึงดูดลูกค้า แต่การสร้างเนื้อหาที่มีคุณภาพตลอดเวลาต้องใช้เวลาและทรัพยากรมาก AI สามารถช่วยสร้างเนื้อหาได้เร็วขึ้น ไม่ว่าจะเป็นโพสต์เฟซบุ๊ก คำบรรยายสินค้า อีเมลการตลาด หรือบทความบล็อก" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีที่ 5: ใช้ AI ทำนายแนวโน้มและวางแผนสินค้า" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "การมีสินค้าคงคลงเป็นสิ่งจำเป็นสำหรับธุรกิจค้าปลีก แต่การมีสินค้ามากเกินไปก็เป็นปัญหา AI สามารถวิเคราะห์ข้อมูลยอดขายในอดีต ฤดูกาล และปัจจัยอื่นๆ เพื่อทำนายว่าควรสั่งสินค้าเท่าไหร่ในแต่ละช่วง" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "post-002",
|
|
||||||
"slug": "ai-content-google-love",
|
|
||||||
"data": {
|
|
||||||
"title": "วิธีสร้าง Content ด้วย AI ที่ Google รัก",
|
|
||||||
"excerpt": "เรียนรู้วิธีการใช้ AI ช่วยสร้างเนื้อหาการตลาดที่มีคุณภาพและได้รับการจัดอันดับดีจาก Google พร้อมเทคนิคและตัวอย่างจริง",
|
|
||||||
"image": "/images/blog/ai-content-google-love.jpg",
|
|
||||||
"date": "2026-03-10",
|
|
||||||
"category": "AI Content",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "ทำไม AI Content ต้องมีคุณภาพ" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "Google มีอัลกอริทึมที่ฉลาดมาก สามารถแยกแยะได้ว่าเนื้อหาที่สร้างโดย AI มีคุณภาพหรือไม่ เนื้อหาที่ไม่มีคุณค่า สร้างขึ้นแค่เพื่อใส่คีย์เวิร์ด จะถูกลงโทษและไม่ติดอันดับ" }] },
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "วิธีใช้ AI สร้างเนื้อหาที่ดี" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "ใช้ AI เป็นผู้ช่วย ไม่ใช่ผู้เขียนทั้งหมด วิธีที่ดีที่สุดคือใช้ AI ช่วยในบางส่วน เช่น รวบรวมข้อมูล สร้างโครงสร้าง หรือเขียน draft แล้วนำมาปรับแก้ด้วยมนุษย์" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "post-003",
|
|
||||||
"slug": "ai-for-sme-thailand",
|
|
||||||
"data": {
|
|
||||||
"title": "AI สำหรับ SME ไทย: คู่มือฉบับสมบูรณ์",
|
|
||||||
"excerpt": "การใช้ AI สำหรับธุรกิจ SME ไทยเพื่อเพิ่มขีดความสามารถในการแข่งขัน พร้อมแนวทางปฏิบัติจริง",
|
|
||||||
"image": "/images/blog/ai-for-sme-thailand.jpg",
|
|
||||||
"date": "2026-03-08",
|
|
||||||
"category": "AI Business",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "ทำไม SME ต้องใช้ AI" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "AI ไม่ใช่เทคโนโลยีสำหรับบริษัทใหญ่เท่านั้น ธุรกิจ SME สามารถเริ่มใช้ประโยชน์จาก AI ได้ง่ายๆ ด้วยเครื่องมือที่เข้าถึงได้" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "post-004",
|
|
||||||
"slug": "digital-transformation-guide",
|
|
||||||
"data": {
|
|
||||||
"title": "คู่มือ Digital Transformation ฉบับสมบูรณ์",
|
|
||||||
"excerpt": "การ transform ธุรกิจของคุณสู่ดิจิทัลอย่างครบวงจร ตั้งแต่การวางแผนจนถึงการ Implement",
|
|
||||||
"image": "/images/blog/digital-transformation.jpg",
|
|
||||||
"date": "2026-03-05",
|
|
||||||
"category": "Business",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "Digital Transformation คืออะไร" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "Digital Transformation คือการนำเทคโนโลยีดิจิทัลมาใช้ในทุกด้านของธุรกิจ เพื่อเพิ่มประสิทธิภาพและสร้างคุณค่าใหม่ให้กับลูกค้า" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "post-005",
|
|
||||||
"slug": "marketing-automation-guide",
|
|
||||||
"data": {
|
|
||||||
"title": "Marketing Automation: คู่มือเริ่มต้น",
|
|
||||||
"excerpt": "เรียนรู้พื้นฐานของ Marketing Automation และวิธีเริ่มต้นใช้งานสำหรับธุรกิจของคุณ",
|
|
||||||
"image": "/images/blog/marketing-automation-guide.jpg",
|
|
||||||
"date": "2026-03-01",
|
|
||||||
"category": "Marketing",
|
|
||||||
"content": {
|
|
||||||
"type": "doc",
|
|
||||||
"content": [
|
|
||||||
{ "type": "heading", "attrs": { "level": 2 }, "content": [{ "type": "text", "text": "Marketing Automation คืออะไร" }] },
|
|
||||||
{ "type": "paragraph", "content": [{ "type": "text", "text": "Marketing Automation คือการใช้ซอฟต์แวร์เพื่อ automate การตลาดซ้ำๆ เช่น การส่งอีเมล การโพสต์โซเชียลมีเดีย และการวิเคราะห์ข้อมูล" }] }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user