- Liquid glass effect on navbar/cards with backdrop-filter invert - Animated blob gradient background (SVG-based) - Portfolio section: scene-dark invert, show 5 items on home - How Work section: step flow with numbers + connecting lines - Hero: Decision snapshot replacing problem selector - About page: inverted background with contrast fixes - Fix parallax JS bundling via Astro - Fix navbar fixed positioning after liquid glass CSS - Submenu hover fix - Clean up removed legacy files/assets
7.1 KiB
Google Apps Script Lead Form Setup
ใช้ไฟล์นี้เพื่อตั้งระบบรับ lead จากฟอร์ม MoreminiMore แบบง่ายก่อน โดยให้ Google Apps Script บันทึกข้อมูลลง Google Sheet และส่งอีเมลแจ้งเตือนเข้า Gmail/Google Workspace
อ้างอิง official docs:
- Apps Script Web App deployment: https://developers.google.com/apps-script/guides/web
- Apps Script MailApp: https://developers.google.com/apps-script/reference/mail/mail-app
สิ่งที่ต้องมี
- Google account หรือ Google Workspace account ที่จะใช้รับ lead
- แนะนำให้ใช้บัญชีของโดเมนบริษัท เช่น
contact@moreminimore.com - Google Sheet ใหม่ 1 ไฟล์ สำหรับเก็บ lead
ขั้นตอนติดตั้ง
1. สร้าง Google Sheet
- เข้า Google Drive
- สร้าง Google Sheet ใหม่
- ตั้งชื่อเช่น
MoreminiMore Website Leads - ไม่ต้องสร้าง column เอง script จะสร้าง header ให้ตอนมี lead แรก
2. เปิด Apps Script จาก Sheet
- ใน Google Sheet ไปที่
Extensions - เลือก
Apps Script - จะเปิดหน้า Apps Script editor
- ลบโค้ดเดิมใน
Code.gs - Copy โค้ดทั้งหมดจาก
google-apps-script/lead-form.gs - Paste ลงใน
Code.gs
3. แก้อีเมลผู้รับ
ในไฟล์ Code.gs หา:
const CONFIG = {
RECIPIENT_EMAIL: 'contact@moreminimore.com',
เปลี่ยน RECIPIENT_EMAIL เป็นอีเมลที่จะรับแจ้งเตือน lead
ถ้าใช้ contact@moreminimore.com อยู่แล้ว ไม่ต้องแก้
4. Save project
- กด Save
- ตั้งชื่อ project เช่น
MoreminiMore Lead Form
5. Deploy เป็น Web App
ตาม official docs ของ Google ให้ deploy web app โดย:
- มุมขวาบน กด
Deploy - เลือก
New deployment - ตรง
Select typeกด icon ตั้งค่า แล้วเลือกWeb app - ตั้งค่า:
- Description:
MoreminiMore lead form endpoint - Execute as:
Me - Who has access:
Anyone
- Description:
- กด
Deploy - Google จะขอ authorize permissions
- เลือก account ของคุณ
- อนุญาตสิทธิ์ที่เกี่ยวกับ Google Sheets และส่งอีเมล
- Copy
Web app URLเก็บไว้
URL จะหน้าตาประมาณ:
https://script.google.com/macros/s/xxxxxxxxxxxxxxxx/exec
6. ทดสอบ endpoint
เปิด URL ที่ copy มาใน browser ถ้าระบบทำงาน จะเห็น JSON ประมาณ:
{"ok":true,"service":"MoreminiMore lead form"}
7. เอา URL ไปใส่ในเว็บ
ตอน implement หน้าเว็บ ให้ตั้งค่า URL นี้เป็น endpoint ของฟอร์ม
ข้อควรระวัง: Apps Script web app มักไม่เหมาะกับ fetch ที่ต้องอ่าน JSON response ข้ามโดเมนแบบเต็ม ๆ เพราะอาจติด CORS ได้ วิธีที่เหมาะกับ static site คือส่งข้อมูลแบบ simple POST หรือ fetch(..., { mode: "no-cors" }) แล้วให้หน้าเว็บแสดง success state หลัง request ถูกส่งออกไป
ตัวอย่าง payload ที่เว็บควรส่ง:
{
"name": "คุณเอ",
"phone": "0800000000",
"email": "owner@example.com",
"problems": ["ads_not_worth_it", "wrong_leads"],
"message": "ยิงแอดอยู่ แต่ยอดขายไม่คุ้ม อยากรู้ว่าควรแก้อะไรก่อน",
"pageUrl": "https://moreminimore.com/",
"userAgent": "browser user agent"
}
Problem Keys ที่ script รองรับ
| Key | ข้อความ |
|---|---|
website_no_leads |
เว็บมีอยู่แล้ว แต่ไม่ค่อยมีลูกค้าทัก |
ads_not_worth_it |
ยิงแอดอยู่ แต่ยอดขายไม่คุ้ม |
wrong_leads |
มีคนทักมา แต่ไม่ใช่ลูกค้าที่ใช่ |
slow_or_error_work |
ทีมงานทำงานเดิม ๆ แต่ทำงานช้า หรือผิดพลาดบ่อย |
ai_not_sure |
อยากใช้ AI แต่ไม่รู้เริ่มตรงไหน |
not_sure |
ยังไม่แน่ใจว่าควรแก้อะไรก่อน |
วิธีลดโอกาสเมลเข้าขยะ
Apps Script จะส่งเมลจากบัญชี Google ที่ deploy script ดังนั้นควร:
- ใช้บัญชี Google Workspace ของบริษัท ถ้ามี
- ตั้งค่า SPF/DKIM/DMARC ของโดเมนให้ถูกต้อง
- ใช้ subject ปกติ ไม่ spammy เช่น
มีโจทย์ธุรกิจใหม่จากเว็บไซต์ MoreminiMore - อย่าใช้ email ลูกค้าเป็น
From - ให้ script ใช้ email ลูกค้าเป็น
Reply-Toแทน - เนื้อหาอีเมลควรเป็นข้อความสะอาด ไม่ใส่คำขายหรือ link เยอะ
เวลาแก้ script หลัง deploy
ถ้าแก้โค้ดหลังจาก deploy แล้ว:
- กด
Deploy - เลือก
Manage deployments - เลือก deployment เดิม
- กด edit
- เลือก version ใหม่ หรือ new version
- กด deploy/update
ถ้าสร้าง deployment ใหม่ URL อาจเปลี่ยน ต้องเอา URL ใหม่ไปใส่ในเว็บอีกครั้ง
Debug เบื้องต้น
ถ้า submit แล้วไม่เข้า Sheet:
- เปิด Apps Script
- ดูเมนู
Executions - เปิด execution ล่าสุดเพื่อดู error
- ตรวจว่า deploy เป็น
Who has access: Anyone - ตรวจว่าใช้ URL ที่ลงท้าย
/execไม่ใช่/dev
ถ้าเข้า Sheet แต่ไม่ส่งเมล:
- ตรวจสิทธิ์ MailApp ตอน authorize
- ตรวจ
RECIPIENT_EMAIL - ตรวจ quota ของ Google account
- ดู error ใน
Executions