סכמת הטבלאות

מפת קבוצות הטבלאות של WIZZO CMS ותפקיד כל קבוצה: טבלאות הליבה שחובה שיהיו, טבלאות התוכן והנכסים, ניהול ומשתמשים, cron, AI ו-SEO. הרשימה המלאה ב"כל הטבלאות".

⏱ 3 דק' קריאה 575 מילים ערוך דף זה ב-GitHub

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

בעמוד הזה system/ הוא תיקיית הליבה הפרוסה (= api/core בריפו) ו-{admin} הוא CONFIG::$admin_url של האתר.

טבלאות שבלעדיהן האתר לא עולה#

הליבה קוראת אותן בכל בקשה, ולכן הן חייבות להיות קיימות ומלאות לפני שאפשר לפתוח דף.

טבלהתפקידמי קורא
CRM_platformsפלטפורמות ודומיינים (= שפות). שורה אחת לפחות, ו-domain חייב להיות SERVER_NAME של האתרCONFIG::init(), נשמר במטמון 30 יום (platforms)
CRM_paramsפרמטרי מערכת בצורת מפתח וערך (sysName + value)PARAMS::init(), נשמר במטמון 30 יום (params)
CRM_modules (+ _content)המודולים (קונטרולרים) הפעילים באתר. מודול שאינו פעיל מחזיר 404MISC::get_modules_tbl(), MODULE
CRM_seoUrlכתובות ידידותיות: sysname הפונה ל-pageurl פנימיROUTER
CRM_redirectionsהפניות 301 (url_from אל url_to)ROUTER
CRM_langs_words*מילון מילות הממשקLANGS
CRM_scriptsתגיות סקריפט לאזורי head ו-bodyPAGE
CRM_platforms ריקה

בלי שורת פלטפורמה אחת לפחות CONFIG::init() נופלת. דומיין שלא מופיע ברשימה יפול חזרה לפלטפורמה הראשונה, ובצד האתר הציבורי יגמר ב-die("URL ERROR"). אחרי הוספת דומיין צריך למחוק את מטמון platforms.

CRM_params
sysName חייב להיות UNIQUE: הליבה משתמשת ב-INSERT IGNORE וב-ON DUPLICATE KEY UPDATE מול הטבלה הזאת. פרמטרים בשימוש הליבה כוללים attaches_version (גרסת נכסים, עולה ב-1 בכל ניקוי מטמון), log_sql (ראו דיבוג SQL) ו-cron_runner_token.

ניהול ומשתמשי אדמין#

טבלהתפקיד
CRM_adminPanel_adminsמנהלי האתר: שם משתמש, סיסמת bcrypt, קבוצה, IP מותרים, דגל skip_otp
CRM_adminPanel_admins_groupsקבוצות הרשאות. perms = '-1' הוא הכול, אחרת JSON של פאנלים והרשאות
CRM_adminPanel_admins_bad_attemptsניסיונות כניסה כושלים (חסימה לפי קצב)
CRM_adminPanel_panels, _panels_categories, _panels_optionsתפריט הניהול: קטגוריות, פאנלים, תת-עמודים
CRM_adminPanel_sessionsהתחברויות פעילות. נוצרת עצלה על ידי ADMIN::ensure_sessions_table()
CRM_adminPanel_mcp_tokensטוקנים לחיבור MCP

פאנל חדש שלא קיימת לו שורה ב-CRM_adminPanel_panels פשוט לא מופיע בתפריט. ראו בניית פאנל ו-הרשאות אדמין.

תוכן, SEO ונכסים#

טבלהתפקיד
CRM_pages (+ _content)עמודי תוכן
CRM_tree (+ _content)עץ ערכים כללי
CRM_seo_centerמטא ו-Open Graph לפי page_key
CRM_storage, CRM_storage_foldersספריית המדיה והתיקיות שלה. ראו אחסון
CRM_minify_groups, CRM_minify_filesקבוצות קבצי JS ו-CSS לאיחוד
CRM_tag_manager, CRM_tag_manager_groupsתגיות לפי דף וסביבה (אופציונלי)
CRM_mail_tpl, CRM_emails_queueתבניות מייל ותור שליחה (אופציונליים)

משימות מתוזמנות#

CRM_cron_categories, CRM_cron_tasks ו-CRM_cron_logs מחזיקות את המשימות, ההרצות והלוגים. קטגוריה id=1 ("מערכת") מסונכרנת מהשרת הראשי בכל עדכון גרסה. ראו משימות מתוזמנות.

AI, MCP ו-SEO#

  • CRM_ai_agents*, CRM_ai_chat_*, CRM_ai_prompts*, CRM_admin_chat*: סוכני AI, שיחות והנחיות.
  • CRM_seo_findings, CRM_seo_occurrences, CRM_seo_profile, CRM_seo_runs, CRM_seo_metrics, CRM_seo_changes, CRM_seo_bot_hits, CRM_seo_indexnow_sent: חבילת ה-SEO. כולן נוצרות עצלות מתוך הספריות.
  • CRM_analytics*: נתוני צפיות (רק כשמשתמשים ב-system/analytics).

תחזוקה ולוגים#

CRM_wizzo_update_log (היסטוריית עדכוני גרסה), CRM_safe_sql_log (פקודות שהורצו ב-מנהל מסד הנתונים המוגן), CRM_file_manager_log (פעולות במנהל הקבצים).

שרידים ושמות שמטעים#

שםמה זה
CRM_langsטבלה ישנה. נקראת רק מ-copyToAllLangs, שבורה
CRM_buttons*, CRM_newsletter_*, CRM_trg_*, CRM_usersלא מיוצאות במנגנון עדכון המבנה, ולכן לא נוצרות אוטומטית
CRM_admin_logged, CRM_admin_sessionאינן טבלאות: אלה שמות cookies
טבלה חדשה לאתר שלכם

טבלאות שהאתר שלכם מוסיף ליצור בשם CRM_<name> (ו-CRM_<name>_content לשדות מתורגמים), עם id INT AUTO_INCREMENT PRIMARY KEY. אחרי יצירה מחקו את מטמון table_list. אפשר ליצור אותה גם מהפאנל create_table, שרושם אותה כפאנל. ראו SQL להקמה.

ראו גם#

מצאתם טעות או חוסר? תקנו את הדף או פתחו Issue בריפו. התיעוד נכתב מתוך הקוד של ליבה 5.0.115.