ChatGPT Sites: המדריך המלא - אתר חי שעובד מהרגע הראשון, ישר מתוך שיחה

ChatGPT Sites: המדריך המלא - אתר חי שעובד מהרגע הראשון, ישר מתוך שיחה
מאת רועי טל | 11 ביולי 2026 | 20 דקות קריאה
Sites הוא הפיצ׳ר החדש של ChatGPT (בטא ציבורית מ-9 ביולי 2026) שבונה ומארח אתרים שלמים מתוך שיחה - כולל בקאנד אמיתי, לא רק דף סטטי. במדריך הזה בניתי איתו מקצה לקצה דף נחיתה בעברית לעסק הדגמה - סטודיו לסדנאות קפה בשם "פול פנימי" - כולל העלאת לוגו, טופס הרשמה, פרסום פומבי, וחיבור אמיתי שרושם כל נרשם בגיליון Google Sheets ושולח שני מיילים אוטומטיים. כל צילומי המסך כאן הם מהתהליך האמיתי, והאתר שנבנה חי ברשת: pol-pnimi-coffee.
דף נחיתה הוא רק ההתחלה: מה באמת בונים עם Sites
במדריך הזה בחרתי להדגים דף נחיתה עסקי כי זה הצורך הנפוץ ביותר, אבל חשוב להבין: Sites הוא בונה אתרים ואפליקציות שלם, לא כלי לדפי נחיתה. אצל OpenAI עצמם, הדוגמאות המובילות הן דווקא דאשבורדים חיים, מעקבי פרויקטים וכלים פנימיים. שלושה דברים הופכים את זה לאפשרי: לכל אתר יש מסד נתונים אמיתי שזוכר מידע בין ביקור לביקור, כל אתר חדש נולד פרטי כברירת מחדל, ואתם בוחרים בדיוק מי רואה אותו - רק אתם ומי שתזמינו, כל הארגון, או כל מי שיש לו קישור. אלה המשפחות המרכזיות:
אתרים שלמים מרובי עמודים
אתר תדמית מלא או חנות תצוגה עם כמה עמודים, כולל חיבור דומיין משלכם. דף נחיתה הוא רק הצורה הפשוטה ביותר במשפחה הזאת.
ממשקים אישיים פרטיים
כלי שנשאר רק שלכם, בלי לפרסם כלום: למשל מסלול חופשה אינטראקטיבי, מהנה ומלא במידע, שמלווה אתכם יום-יום בטיול, או מדריך אישי לסוף השבוע שמתעדכן לבד.
כלים פנימיים לצוות
אפליקציות עבודה מאחורי התחברות של הארגון: פורטל קליטה לעובד חדש, ספריית הדרכה עם חיפוש, או לוח רעיונות שהצוות מגיש ומצביע עליו.
דאשבורדים ודוחות חיים
דף שמציג נתונים ומדדים ומתעדכן כשהמידע משתנה, במקום מצגת סטטית במייל. אפשר אפילו להגדיר אוטומציה שמרעננת את האתר כל בוקר.
מעקבים ומיני-אפליקציות
אפליקציות קטנות שזוכרות נתונים: מעקב השקת מוצר עם אבני דרך, אפליקציית הצבעות, צ׳קליסטים ומחשבונים שעובדים לפי הכללים שלכם.
אבות טיפוס ומשחקים
רעיון שהופך לאב טיפוס עובד ששולחים בקישור לפני שמשקיעים בפיתוח אמיתי, ואפילו משחקים שלמים ששומרים טבלת שיאים בין ביקורים.
רוצים לראות למה זה מסוגל? ל-OpenAI יש גלריית Showcase רשמית של אתרים חיים שנבנו עם Sites - כולל הפרומפט המלא שיצר כל אחד מהם. והחדשות הטובות: כל מה שתלמדו במדריך הזה - תכנון נכון, פרומפט מפורט, שיפור באיטרציות, פרסום וחיבורים חיצוניים - עובד אחד לאחד לכל סוג אתר כזה.
מה תשיגו בסוף המדריך
- דף נחיתה מלא בעברית (RTL אמיתי) עם הלוגו והתמונות שלכם, בנוי בפרומפט אחד
- טופס הרשמה עם הודעת הצלחה באותו עמוד, בדוק גם במובייל
- אתר מפורסם בכתובת ציבורית עם title ו-meta description תקינים
- כל הרשמה נשמרת כשורה בגיליון Google Sheets שנוצר אוטומטית
- מייל התראה אליכם + מייל תודה מעוצב לנרשם, על כל הרשמה - אוטומטית
חשוב להבין לפני שמתחילים: Sites רץ על קרדיטים, לא על שיחות
Sites הוא חלק מסביבת ה-Work של ChatGPT, ולכן הוא לא נספר כמו שיחה רגילה - הוא צורך מכסת שימוש נפרדת של Work/Codex, שקטנה בהרבה ממכסת הצ׳אט. כל בנייה, כל עריכה וכל חיבור של האתר שורפים ממנה. כשהיא נגמרת, כפתור השליחה ננעל ומופיעה הודעת "You are out of Work and Codex usage" עם שעת האיפוס.
מה עושים כשנגמר: מחכים לאיפוס, קונים קרדיטים ב-Add credits, או משדרגים תוכנית. ובעיקר - בגלל זה שווה להגיע ל-Sites עם פרומפט מוכן ומפורט, כמו שנבנה בחלק 1, במקום לבזבז קרדיטים על ניסוי וטעייה.
מה צריך לפני שמתחילים
ChatGPT בתשלום
Sites זמין בתוכניות בתשלום (אצלי - Plus). נכנסים דרך chatgpt.com/sites או מתג ה-Work בראש הצ׳אט. לא זמין באיחוד האירופי ובבריטניה - בישראל עובד.
חשבון Google
לחלק המתקדם: גיליון ההרשמות, Apps Script והמיילים יוצאים מחשבון Google שלכם. צריך גישה ל-Google Sheets ול-Gmail.
לוגו ותמונות
קובץ לוגו (PNG) ו-2-3 תמונות אמיתיות של העסק. מצרפים אותם לפרומפט ו-Sites גוזר מהם את השפה העיצובית של כל הדף.
עוד הערה אחת לפני שצוללים: העסק במדריך הוא עסק הדגמה בדוי שהמצאתי במיוחד - "פול פנימי", סטודיו תל אביבי לסדנאות קפה בקבוצות קטנות, עם בעלת עסק בשם מיה. בדקתי לפני שהתחלתי שאין עסק אמיתי בשם הזה. אתם פשוט מחליפים את הפרטים בשלכם.
הטעות הנפוצה היא לפתוח את Sites ולכתוב "תבנה לי אתר". התוצאה תהיה גנרית, וכל תיקון יעלה קרדיטים. במקום זה, אני מתחיל בשיחה רגילה (וחינמית מבחינת מכסת Work) שבה ChatGPT עוזר לי לחשוב: מה מטרת הדף, מי הקהל, אילו מקטעים, איזה CTA ואילו שדות בטופס. את השיחה הזאת מסיימים בבקשה אחת חשובה - לנסח את הכל כבריף מסודר להדבקה.
מדביקים בשיחה רגילה (מחליפים את הסוגריים):
אני פותח [סוג העסק שלכם, למשל: סטודיו לסדנאות קפה בקבוצות קטנות] בשם "[שם העסק]" - [מה אתם מציעים]. אני רוצה לבנות דף נחיתה שמטרתו אחת: [הפעולה שאתם רוצים מהגולש, למשל: הרשמה לסדנת טעימות]. עזור לי לתכנן אותו לפני שאני בונה: מה המטרה המדויקת של הדף, מי הקהל, אילו מקטעים צריכים להיות ובאיזה סדר, איזה CTA, אילו שדות בטופס ההרשמה (מינימום נדרש), ואיזו שפה עיצובית תתאים ללוגו שלי. בסוף נסח לי את כל זה כבריף אחד מסודר שאדביק כמו שהוא לכלי שבונה את האתר.



טיפ: מהבריף הזה שווה לקחת הכל - חוץ מדבר אחד. ChatGPT המליץ לוותר על שדה אימייל בטופס כדי לקצר אותו. השארתי אותו בכוונה, כי בלי אימייל אין לאן לשלוח את מייל האישור בחלק 5. תמיד תתאימו את ההמלצות למה שאתם באמת צריכים.
עכשיו עוברים ל-Sites, ויש שתי דרכים להגיע אליו. הדרך המסודרת, שהיא גם הבית הקבוע של כל האתרים שלכם: בסרגל הצד לוחצים על More, ובתפריט שנפתח בוחרים Sites (עם תג NEW). זה פותח את דשבורד ה-Sites - שם מרוכזים כל האתרים שכבר בניתם, עם מצב השיתוף של כל אחד, וכפתור עיפרון שמחזיר אתכם לעריכה של כל אתר קיים בכל רגע.


לחיצה על Create פותחת צ׳אט חדש שכבר ממתין עם תחילת פרומפט מוכנה - "Make me a @Sites about ..." - ונשאר רק להשלים. הדרך השנייה, המהירה: בצ׳אט חדש מעבירים את המתג בראש המסך מ-Chat ל-Work ומקלידים @Sites בעצמכם - ההקלדה של @ פותחת תפריט עם הכלים המחוברים.


זה הפרומפט המלא ששלחתי, אחרי שהתאמתי אותו לפי הבריף מחלק 1. לפני השליחה צירפתי דרך כפתור הפלוס שלושה קבצים: הלוגו ושתי תמונות סדנה. שימו לב לשורת השפה העיצובית - היא אומרת ל-Sites לגזור את הצבעים מהלוגו המצורף, וזה בדיוק מה שקרה.
פרומפט המאסטר (מחליפים את הסוגריים בפרטים שלכם ומצרפים לוגו + תמונות):
@Sites בנה דף נחיתה חד-עמודי בעברית, RTL מלא, לעסק הבא: העסק: "[שם העסק]" - [תיאור קצר: מה העסק עושה, איפה, למי]. מטרת הדף: [הפעולה האחת]. כל הדף מוביל לטופס אחד. קהל יעד: [מי הקהל]. מבנה: הירו עם הלוגו המצורף, כותרת וכפתור "[נוסח ה-CTA]"; פסקת "על העסק"; כרטיסי [מוצרים/שירותים] עם מחיר; גלריה עם התמונות המצורפות; 3 המלצות (מומצאות, שמות פרטיים בלבד); שאלות נפוצות (4); טופס הרשמה; פוטר עם פרטי קשר. טופס ההרשמה - בדיוק השדות האלה: שם מלא (חובה), טלפון (חובה), אימייל (חובה - לשליחת אישור), [שדה בחירה], תאריך מועדף, הערות. אחרי שליחה להציג הודעת הצלחה באותו עמוד: "קיבלנו את ההרשמה! נחזור אליך תוך יום עסקים" - בלי מעבר לעמוד אחר. שפה עיצובית: לפי הלוגו המצורף - [צבעי המותג שלכם], טיפוגרפיה עברית נקייה, הרבה אוויר, פינות מעוגלות. מובייל: הדף חייב להיראות מצוין ברוחב 390 פיקסלים, כפתורים בגודל אצבע, וכפתור הרשמה דביק בתחתית המסך. SEO: כותרת title בעברית עם שם העסק + [ביטוי החיפוש שלכם], ותיאור meta של עד 155 תווים.






האתר הראשון שיצא היה טוב מאוד, אבל דבר אחד צרם לי: האייקונים בכרטיסי הסדנאות היו סמלים גנריים - עיגול מקווקו, לב, כוכב. זו בדיוק הסיטואציה של עריכה ב-Sites: בתחתית התצוגה המקדימה יש שדה "Edit website", וכל בקשה שם עוברת לאותו הקשר של האתר. הכלל שעבד לי: לבקש שינוי אחד ממוקד, לתאר בדיוק מה רוצים במקום, ולסיים ב"אל תשנה שום דבר אחר".

פרומפט התיקון ששלחתי בשדה Edit website:
החלף את האייקונים בארבעת כרטיסי הסדנאות באייקוני קו נקיים ואחידים בגוון קרמל, שמתאימים לנושא של כל סדנה: כוס טעימה לסדנת טעימות, מכונת אספרסו לבריסטה ביתי, כוס עם לב של לאטה ארט, ושתי דמויות לזוגות וצוותים. אל תשנה שום דבר אחר בעמוד.


עוד פרומפטי תיקון שעובדים טוב: "הגדל את כפתור ההרשמה במובייל והפוך אותו לדביק בתחתית המסך" / "החלף את תמונת ההירו בתמונה השנייה שצירפתי" / "קצר את פסקת האודות לשני משפטים" / "כל הטקסט חייב להיות מיושר לימין, כולל placeholders בטופס". תמיד שינוי אחד בכל פעם - כך קל לוודא שכלום לא נשבר, וכל עריכה עולה פחות קרדיטים.
לפני שמפרסמים, עוברים על חמישה דברים: מובייל, כפתורים, טופס, RTL ו-SEO. את המובייל בדקתי ברוחב 390 פיקסלים - וקיבלתי בדיוק את מה שביקשתי בפרומפט, כולל כפתור ההרשמה הדביק בתחתית.


מובייל ברוחב 390px: הירו עם כפתור ברוחב מלא בגודל אצבע, וכפתור דביק בתחתית שנשאר בכל גלילה.
בדיקת הטופס: מילאתי נרשמת בדיקה בדויה ("נועה כהן") ושלחתי. הודעת ההצלחה הופיעה באותו עמוד, בדיוק כפי שהוגדר בפרומפט - וי ירוק, "קיבלנו את ההרשמה!", בלי מעבר לעמוד אחר.


גם ה-SEO שביקשתי בפרומפט נכנס: כותרת הדף היא "פול פנימי | סדנאות קפה בתל אביב", ותיאור ה-meta הוא בדיוק 155 תווים בעברית. אפשר לוודא בלשונית הדפדפן או בקוד המקור של הדף.
פרטי או פומבי? כך עובד הפרסום
אתר חדש נוצר במצב "Only you" - רק אתם. ניסיתי לפתוח את הכתובת בטאב רגיל וקיבלתי חומת התחברות: "This site uses ChatGPT to securely sign you in". זה מצוין לאתרים פנימיים, אבל דף נחיתה צריך להיות פתוח לכולם.




שקיפות ופרטיות לפני פרסום
"Anyone with the link" הופך את האתר לציבורי לכל דבר - כל מי שיקבל את הקישור יראה אותו, בלי צורך בחשבון. לכן לפני הפרסום ודאו שאין בדף פרטים שלא נועדו לעולם (טלפון אישי, מחירים פנימיים). זכרו גם: אם האתר אוסף פרטים אישיים בטופס - האחריות החוקית על המידע הזה היא שלכם, לא של OpenAI. ובנימה מעשית - הכתובת חושפת את שם המשתמש שלכם; אם זה מפריע, אפשר לחבר דומיין משלכם דרך הגדרות האתר.
רגע לפני החיבור: איך זה עובד מתחת למכסה המנוע
עד כאן הכל היה ויזואלי - עמוד שרואים ולוחצים עליו. החלק הבא נשען על שני מושגים שפחות מוחשיים, אבל הם אבני היסוד של כל אפליקציה: הרשאות (מי מורשה לגעת במידע שלכם) ופריסה (איך קוד הופך לשירות חי בעולם). דקה של הבנה כאן תחבר את כל הקליקים בחלק 5 לתמונה אחת, ותאפשר לכם לאבחן לבד אם משהו נתקע.
הרשאות - מי מורשה לגעת במידע
כל פעולה על נתונים - כתיבה לגיליון, שליחת מייל - חסומה כברירת מחדל. אתם, בעלי החשבון, נותנים את ההרשאה פעם אחת ובמפורש, מתוך החשבון שלכם. אתם היחידים ששולטים בהגדרה הזאת, ואפשר לבטל אותה בכל רגע - בהגדרות חשבון Google, תחת האפליקציות והשירותים המחוברים.
פריסה - להפוך קוד לכתובת חיה
פריסה לוקחת קוד ששמור אצלכם והופכת אותו לשירות עם כתובת שהעולם יכול לפנות אליה (זו שמסתיימת ב-/exec). בלי פריסה הקוד קיים, אבל אף אחד מבחוץ לא יכול להריץ אותו. שמירה בעורך היא לא פריסה.
Apps Script - שרת קטן שגוגל מריצה בשבילכם
סביבת קוד (JavaScript) שמתארחת ורצה על שרתי Google בשמכם. בזכות זה מותר לה לכתוב לגיליון שלכם ולשלוח מייל מהחשבון שלכם. זה הגשר בין האתר הפומבי לבין הנכסים הפרטיים שלכם ב-Google.
הקונקטורים - הגשר בין OpenAI ל-Google
בזמן הבנייה, ChatGPT ניגש ל-Google שלכם דרך חיבור OAuth שאתם מאשרים (אותו "Reconnect Gmail"), כדי ליצור את הגיליון. זה קורה רק בתוך השיחה, לצורך ההקמה - לא בכל הרשמה.
תרשים הזרימה: מה קורה מאחורי הקלעים
שני שלבים נפרדים: הקמה חד-פעמית שבה מעניקים הרשאות ופורסים, ואז זרימה אוטומטית בכל הרשמה.
הקמה - קורה פעם אחת
מחברים את Google ל-ChatGPT
אישור OAuth חד-פעמי - זה ה-Reconnect
ChatGPT יוצר את הגיליון בדרייב שלכם
דרך אותו קונקטור, בתוך השיחה
אתם מאשרים לסקריפט הרשאות
בהרצה הראשונה - גישה לגיליון ולשליחת מייל בשמכם
פורסים כאפליקציית אינטרנט
הקוד הופך לכתובת חיה שמסתיימת ב-/exec
זמן ריצה - בכל הרשמה, אוטומטית
גולש ממלא ושולח את הטופס
באתר הציבורי החי
שרת האתר מוסיף את הטוקן הסודי
בצד השרת - הטוקן לא נחשף לגולש
הבקשה מגיעה לכתובת /exec של Apps Script
ישירות מול Google
הסקריפט מאמת את הטוקן ופועל בשמכם
טוקן שגוי נדחה כלא-מורשה (Unauthorized)
נשמרת שורה בגיליון + נשלחים שני מיילים
התראה אליכם ואישור לנרשם
התובנה המרכזית: אחרי הפריסה, שיחת ה-AI סיימה את תפקידה - בזמן ריצה כבר לא מתבצעת שום קריאה למודל של ChatGPT, והטופס לא תלוי ב-AI כדי לעבוד. תפקידה של OpenAI מצטמצם לאירוח ולהגשת הדף (והוספת הטוקן בצד השרת), בעוד צינור הנתונים עצמו - שמירת השורה ושליחת המיילים - רץ מול Google בלבד, דרך הכתובת /exec. החיבור בין שני המנועים מתומצת מעכשיו לשני דברים בלבד: הכתובת הפומבית /exec והטוקן הסודי (שאיננו הרשאה של Google, אלא סיסמה משותפת בין האתר לסקריפט).
למה "לשמור" לא מספיק: שמירה (Ctrl+S) מעדכנת את קוד המקור בעורך, אבל הכתובת החיה /exec ממשיכה להגיש את הגרסה האחרונה שפרסתם. לכן כל שינוי בקוד דורש פריסה של גרסה חדשה (בעורך: לפריסה, ניהול פריסות, עריכה, ואז גרסה חדשה - הצעדים המדויקים בחלק 5). שמירה לבד לא מספיקה, והאתר ימשיך להריץ את הקוד הישן. זה בדיוק ההבדל בין "הקוד קיים אצלכם" לבין "הקוד באמת רץ בעולם".
כאן מגיע החלק שהופך דמו לעסק: כרגע ההרשמות נשמרות רק בבסיס הנתונים הפנימי של Sites, בלי שום התראה. אין ל-Sites מייל מובנה על כל נרשם - אז נבנה את זה בעצמנו, וה-Sheet? ביקשתי מ-ChatGPT שפשוט ייצור אותו לבד. שלחתי בצ׳אט של האתר את הפרומפט הבא:
פרומפט החיבור (בצ׳אט של האתר, לא בשדה העריכה):
עכשיו תחבר את טופס ההרשמה כך שזה יעבוד באמת: צור בעצמך קובץ Google Sheets בדרייב שלי בשם "הרשמות - [שם העסק]", ובכל שליחת טופס באתר החי תוסיף שורה חדשה עם כל הפרטים (תאריך ושעה, שם מלא, טלפון, אימייל, [שדה הבחירה], תאריך מועדף, הערות). בנוסף, בכל הרשמה חדשה שלח אליי מייל עם פרטי הנרשם, ושלח לנרשם עצמו מייל תודה קצר בעברית שמאשר שקיבלנו את הפנייה ושנחזור אליו תוך יום עסקים.

שלב 1: מחברים את Google (פעם אחת)
כדי ש-ChatGPT יוכל ליצור גיליון ולבדוק מיילים, הוא משתמש בקונקטורים של Google. אצלי חיבור ה-Gmail פג תוקף, אז קיבלתי כרטיס "Reconnect Gmail" - לוחצים Reconnect, בוחרים חשבון, מסמנים את תיבת ההרשאה ולוחצים המשך. זה תהליך OAuth רגיל של Google, אותו אחד שאתם עושים בכל אפליקציה.



שלב 2: ChatGPT יוצר את הגיליון לבד


שלב 3: Apps Script - הגשר בין האתר לגיליון ולמיילים
נקודה חשובה שכדאי להבין: אתר ציבורי לא יכול לכתוב ישירות לגיליון שלכם או לשלוח מייל בשמכם - Google דורשת שתאשרו זאת פעם אחת מתוך החשבון, באמצעות פריסה של Apps Script. ChatGPT הסביר את זה בעצמו, נתן לי קוד מלא מוכן להדבקה והנחיות שלב-אחר-שלב. ככה זה נראה בשיחה:


אצלכם ChatGPT ייצור קוד מותאם משלו, אבל כדי שיהיה לכם ייחוס - זו גרסה גנרית ועובדת של אותו קוד בדיוק. מחליפים את ארבעת הערכים ב-CONFIG:
var CONFIG = {
SPREADSHEET_ID: "YOUR_SHEET_ID", // המזהה מכתובת הגיליון
SHEET_NAME: "הרשמות",
OWNER_EMAIL: "you@example.com", // לאן נשלחת ההתראה
BUSINESS_NAME: "שם העסק",
SECRET_TOKEN: "CHOOSE_A_LONG_RANDOM_TOKEN"
};
function doGet() {
return jsonOut({ ok: true, message: "service is up" });
}
function doPost(e) {
var lock = LockService.getScriptLock();
try {
lock.waitLock(15000);
var data = readBody(e);
if (data.token !== CONFIG.SECRET_TOKEN) {
return jsonOut({ ok: false, error: "Unauthorized" });
}
var reg = {
fullName: clean(data.fullName),
phone: clean(data.phone),
email: clean(data.email).toLowerCase(),
workshopType: clean(data.workshopType),
preferredDate: clean(data.preferredDate),
notes: clean(data.notes)
};
if (!reg.fullName || !reg.phone || !reg.email) {
return jsonOut({ ok: false, error: "missing fields" });
}
var sheet = SpreadsheetApp.openById(CONFIG.SPREADSHEET_ID)
.getSheetByName(CONFIG.SHEET_NAME);
var now = Utilities.formatDate(new Date(), "Asia/Jerusalem", "dd/MM/yyyy HH:mm:ss");
sheet.appendRow([now, reg.fullName, reg.phone, reg.email,
reg.workshopType, reg.preferredDate, reg.notes]);
MailApp.sendEmail({
to: CONFIG.OWNER_EMAIL,
replyTo: reg.email,
name: CONFIG.BUSINESS_NAME,
subject: "הרשמה חדשה - " + reg.fullName,
htmlBody: "<div dir=\"rtl\"><h2>הרשמה חדשה מהאתר</h2>" +
"<p><b>שם:</b> " + esc(reg.fullName) + "</p>" +
"<p><b>טלפון:</b> " + esc(reg.phone) + "</p>" +
"<p><b>אימייל:</b> " + esc(reg.email) + "</p>" +
"<p><b>סוג סדנה:</b> " + esc(reg.workshopType) + "</p>" +
"<p><b>תאריך מועדף:</b> " + esc(reg.preferredDate) + "</p>" +
"<p><b>הערות:</b> " + esc(reg.notes) + "</p></div>"
});
MailApp.sendEmail({
to: reg.email,
replyTo: CONFIG.OWNER_EMAIL,
name: CONFIG.BUSINESS_NAME,
subject: "קיבלנו את ההרשמה שלך - " + CONFIG.BUSINESS_NAME,
htmlBody: "<div dir=\"rtl\"><p>היי " + esc(reg.fullName.split(" ")[0]) + ",</p>" +
"<p>תודה שנרשמת. קיבלנו את הפנייה שלך ונחזור אליך תוך יום עסקים.</p>" +
"<p>" + CONFIG.BUSINESS_NAME + "</p></div>"
});
return jsonOut({ ok: true });
} catch (err) {
console.error(err);
return jsonOut({ ok: false, error: String(err) });
} finally {
try { lock.releaseLock(); } catch (e2) {}
}
}
function readBody(e) {
if (e && e.postData && e.postData.contents) {
try { return JSON.parse(e.postData.contents); } catch (err) {}
}
return (e && e.parameter) ? e.parameter : {};
}
function clean(v) { return String(v || "").trim(); }
function esc(v) {
return String(v || "").replace(/&/g, "&").replace(/</g, "<")
.replace(/>/g, ">").replace(/"/g, """);
}
function jsonOut(data) {
return ContentService.createTextOutput(JSON.stringify(data))
.setMimeType(ContentService.MimeType.JSON);
}פותחים את הגיליון, בוחרים בתפריט תוספים ואז Apps Script, מוחקים את הקוד הריק שבעורך ומדביקים. שומרים (Ctrl+S), בוחרים את הפונקציה doGet ליד כפתור ההפעלה, ולוחצים הפעלה - זה מדליק את תהליך ההרשאות:




שלב 4: פורסים כאפליקציית אינטרנט ומחברים את האתר
אחרי שההרצה הצליחה (רואים "ההפעלה הושלמה" ביומן), לוחצים על הכפתור הכחול "לפריסה" ואז "פריסה חדשה". בגלגל השיניים בוחרים "אפליקציית אינטרנט" וממלאים בדיוק כך:
תיאור: שם חופשי, למשל "טופס הרשמה - פול פנימי"
לבצע בתור: עצמי - כך לסקריפט יש הרשאה לגיליון ולמייל שלכם
למי יש גישה: כולם - חובה, אחרת האתר הציבורי ייחסם. הטוקן הסודי בקוד הוא שמגן מפני שימוש זר
לפריסה - ומעתיקים את הכתובת שמסתיימת ב-/exec


את הכתובת הזאת שולחים ל-ChatGPT בצ׳אט של האתר ("זו כתובת ה-Web app: ... חבר את האתר החי ובדוק"). כאן קרה הדבר האלגנטי באמת: הוא חיבר את הטופס דרך צד השרת של האתר - כך שהטוקן הסודי לא נחשף לאף גולש - ואז הריץ בעצמו הרשמת בדיקה מלאה ואימת את כל השרשרת:

שגיאה שקרתה לי: "אין לך הרשאה לביצוע הפעולה"
אם הגיליון נוצר בחשבון Google אחד ואתם מחוברים בדפדפן לחשבון אחר (קורה למי שיש חשבון עסקי ופרטי), הפריסה מהסקריפט הצמוד לגיליון תיכשל עם הודעת ההרשאה הזאת. הפתרון שעבד לי: פותחים פרויקט Apps Script עצמאי מ-script.google.com בחשבון שאתם מחוברים אליו, מדביקים את אותו קוד (הוא פונה לגיליון לפי מזהה, אז זה עובד מכל חשבון עם הרשאת עריכה) ופורסים משם.
לא סומכים על אף אחד, כולל על ChatGPT - בודקים לבד, ודווקא באתר הציבורי (לא בתצוגה המקדימה!). פתחתי את האתר החי בדפדפן, נרשמתי בתור "נועה כהן", וקיבלתי את הודעת ההצלחה:



כשמשהו לא עובד: תקלות נפוצות
גם אצלי לא הכל עבד בפעם הראשונה - וזה החלק הכי שימושי במדריך. כלי האבחון המרכזי: יומן ההפעלות של Apps Script (סמל הרשימה בתפריט הצד של העורך). כל קריאה לסקריפט מופיעה שם, כולל שגיאות - וזה מה שמפריד בין "הבקשה לא הגיעה בכלל" ל"הסקריפט נכשל".

שלחתי טופס, אין שורה בגיליון ואין ביומן
סיבה: הדפדפן מציג גרסה ישנה של האתר מלפני החיבור (קרה לי בדיוק כך - קיבלתי הודעת הצלחה, אבל שום דבר לא נרשם). פתרון: רענון קשיח (Ctrl+F5) או פתיחה בחלון גלישה בסתר, ושליחה מחדש.
שיניתי את הקוד וכלום לא השתנה
סיבה: עריכת קוד לא מתעדכנת בפריסה הקיימת. פתרון: לפריסה, ניהול הפריסות, עריכה, ובוחרים "גרסה חדשה". שמירה לבד לא מספיקה.
הסקריפט מחזיר Unauthorized
סיבה: הטוקן שהאתר שולח לא זהה לטוקן שב-CONFIG, או שהגישה בפריסה לא הוגדרה "כולם". פתרון: משווים את שני הטוקנים ובודקים את הגדרת הגישה בפריסה.
המיילים לא מגיעים
סיבה: תיבת ספאם, או שנגמרה מכסת MailApp היומית של Google (כ-100 נמענים ביום בחשבון פרטי). פתרון: בודקים בספאם ומסמנים "לא ספאם"; לעסק עם נפח גדול שוקלים Workspace.
שאלות נפוצות
מה זה בעצם ChatGPT Sites ולמי יש גישה?
פיצ׳ר בבטא ציבורית (מ-9 ביולי 2026) שבונה, מארח ומפרסם אתרים ואפליקציות ווב מתוך שיחה. זמין בתוכניות בתשלום דרך chatgpt.com/sites או ממשק ה-Work, ולא זמין באיחוד האירופי, בשווייץ ובבריטניה. בישראל עובד רגיל.
אפשר לבנות עם Sites גם דברים שהם לא דפי נחיתה?
כן, וזה בעצם העיקר: אתרים שלמים מרובי עמודים, דאשבורדים חיים, כלים פנימיים לצוות מאחורי התחברות, מעקבים ומיני-אפליקציות ששומרות נתונים בין ביקורים, משחקים, וגם ממשקים פרטיים לגמרי - כמו מסלול חופשה אינטראקטיבי שרק אתם רואים. כל אתר נולד פרטי כברירת מחדל, כך שהוא בכלל לא חייב להתפרסם לרשת.
זה באמת יודע עברית ו-RTL?
כן, ובצורה מפתיעה לטובה - אצלי כל הדף יצא RTL תקין מהניסיון הראשון, כולל הטופס וה-placeholders. התנאי: לכתוב בפרומפט במפורש "בעברית, RTL מלא". אם משהו בכל זאת מתהפך, פרומפט תיקון קצר סוגר את זה.
כמה זה עולה? מה זה הקרדיטים האלה?
Sites כלול בתוכנית בתשלום, אבל צורך מכסת Work/Codex נפרדת משיחות רגילות - וכל בנייה או עריכה שורפת ממנה. כשהיא נגמרת מקבלים הודעה עם שעת האיפוס, ואפשר גם לקנות קרדיטים או לשדרג. תכנון מראש (חלק 1) חוסך הרבה.
איך אני מקבל מייל על כל נרשם? אין לזה כפתור מובנה?
נכון להיום אין ב-Sites התראות מייל מובנות - ההרשמות נשמרות בבסיס הנתונים של האתר. לכן בנינו בחלק 5 את החיבור המלא: ChatGPT יוצר גיליון, אתם פורסים Apps Script קטן פעם אחת, והאתר שולח לשם כל הרשמה - שורה בגיליון, מייל אליכם ומייל אישור לנרשם.
אפשר דומיין משלי במקום הכתובת עם שם המשתמש?
כן. בהגדרות האתר (Site settings) יש חיבור דומיין - צריך דומיין בבעלותכם וגישה לרשומות ה-DNS אצל הרשם. Sites לא מוכר דומיינים בעצמו.
זהו. מרעיון בצ׳אט ועד עסק שמקבל לידים למייל - בערך שעתיים של עבודה נטו, שרובן היה לצפות ב-Sites עובד. האתר של פול פנימי נשאר חי בכתובת pol-pnimi-coffee.roit87.chatgpt.site - מוזמנים להיכנס, ואפילו להירשם לסדנה שלא קיימת. המייל שיישלח אליכם בחזרה הוא בדיוק החיבור שבניתם עכשיו במדריך. ואם דף הנחיתה היה בשבילכם רק ההתחלה - קחו את אותו התהליך בדיוק ונסו אותו על דאשבורד, מעקב פרויקט או מסלול לטיול הבא שלכם.
הירשמו לעדכונים במייל
רוצים להישאר צעד אחד קדימה?
עדכונים על כלי AI, מדריכים וטיפים - ישר למייל. בלי ספאם.
