רוב מערכות ניהול התוכן בקוד הפתוח לא מתפקדות כמו שצריך. זה באמת מתסכל. הדבר היחידי שיותר גרוע ממערכות פתוחות הן מערכות ניהול התוכן המסחריות - האחרונות עוד יותר גרועות. אך למעשה המצב לא צריך להיות כמו שהוא עכשיו.
עשיתי מעט מחקר וביקרתי באתר OpenSourceCMS.com - אתר פשוט שמאפשר לגולש לנסות להשתמש בכמה מערכות ניהול תוכן ולבחור איזו מערכת ניהול תוכן טובה בשבילו. התוצאות לא מעודדות. רוב מערכות ניהול התוכן משלבות בתוכן פיצ'רים מיותרים אשר באים על חשבון ממשק המשתמש וחווית המשתמש. רוב מערכות ניהול התוכן נבנו ע"י מתכנתים ולכן החשיבה שעל בסיסה בנויה המערכת היא שמתכנתים יבינו כיצד פועלת אך למעשה מערכת ניהול תוכן טובה צריכה לשים את בעל האתר במרכז ולנסות להתחקות אחר המחשבות של מנהל האתר שישתמש במערכת ובכך להתאים את האתר לצרכיו.
ריכזתי כאן כמה המלצות שלי לכתיבת מערכת ניהול תוכן טובה:
יצרו מערכת קלה להתקנה. מערכת ניהול התוכן תאומץ על מנהל האתר עם השלב הראשון יהיה פשוט בשבילו. כל מה שיצטרך בעל האתר לעשות הוא: להוריד, לפרוק את הקבצים ולהפעיל את קובץ ההתקנה. מערכת ניהול תוכן טובה תשאל את בעל האתר מספר שאלות ולאחר מכן תקנפג את מסד הנתונים. משך ההתקנה צריך להיות מהיר, פשוט ואינטואיטיבי. במידה ולא חייבים לעשות דבר מה, תוותרו עליו.
יצרו מערכת שקל להתחיל להשתמש בה. צריך לאפשר למשתמש לבצע את הפעולות החיוניות ביותר בצורה הפשוטה ביותר כבר בהתחלה.בשלב הראשון, הדבר הבסיסי ביותר שאני רוצה לעשות הוא ליצור עמוד ראשון באתר, תאפשרו לי ליצור את הדף בפשטות. לאחר מכן ארצה לעצב את הדף ולייצר קישורים לדפים נוספים. בנו את המערכת כך שסרגל הלמידה שלי יאפשר לי להתחיל עם הדברים הפשוטים בפשטות ולאחר מכן להתקדם, תוך כדי שאני מתמחה במערכת. בעל האתר צריך להרגיש נוח עם המערכת ולהרגיש שליטה מסוימת תוך מספר דקות. שמרו את הפונקציות המורכבות למאוחר יותר, שמירה לPDF, הכנסת תגיות מטה והפניות 301. אני אצטרך את הפונקציות האלה אבל מאוחר יותר.
צרו דוקומנטציה למערכת בהתחלה. לרוב מערכות ניהול התוכן יש הוראות התקנה דיי טובות: "קודם תעשה את זה, לאחר מכן את זה ואז תעשה כך". אך שמגיעים לשימוש בתכליתי במערכת ניהול התוכן צורת ההסברה משתנה לחלוטין, במקום להסביר תהליך ישנו פירוט אינסופי ודקדקני על כל פיצ'ר במערכת. תנו לי הסבר תהליכי, הרבה יותר קל להבין לדוגמא, שאני יכול להתחיל בכתיבת תבנית ואז אני יכול להלביש דף על בסיס התבנית.
צרו הפרדה בין ניהול של מערכת ניהול תוכן לבין ניהול התוכן באתר. צרו הפרדה בממשק המשתמש בין החלקים שאחראיים לניהול התוכן לבין החלקים שמגדירים את המערכת עצמה. רוב העבודה עם מערכת ניהול תוכן תעשה מול החלק הראשון ורק כ-2 אחוז מכלל העבודה תעשה ע"י החלק השני.
גולשים שאינם קשורים לניהול האתר לא צריכים להגיע לעולם לעמוד שמאפשר כניסה למערכת ניהול התוכן. כאשר בניתי מערכת ניהול תוכן, יצרתי ממשק נפרד להתחברות למערכת הניהול התוכן ולאתר עצמו. משום מה כל מערכות ניהול התוכן הפתוחות מייחדות את האתר עם הכניסה למערכת הניהול. בהרבה מערכות ניהול תוכן ניתן לייצר יוזר לכניסה לעריכת האתר דרך האתר עצמו, כן, כמובן שאפשר באמצעות עריכה פשוטה להעלים את האופציה של ההרשמה אבל למה היא שם מלכתחילה אם רוב המשתמשים לא צריכים את האופציה הזאת?
צרו שפה נוחה למשתמש. אני לא יודע מה זה טמפלט, או component, module, block, או snippet. המילים שנבחרות לייצג חלקי ניהול במערכת ניהול התוכן נבחרו ע"י המתכנת הראשי אך לא נעשתה חשיבה על היוזר שעמוד להשתמש במילים האלה ועליו להבין את משמעותן. השתמשו בשפה ברורה ופשוטה לכל חלק במערכת ניהול התוכן שלכם ואל תמציאו מילים אם אתם לא צריכים.
זה ברור שאין מערכת ניהול תוכן שמתאימה לכל האתרים. בסופו של דבר, מערכת ניהול תוכן צריכה לאפשר לעורכי התוכן ולבעלי האתר לבצע את עבודת עריכת התוכן בצורה הפשוטה ביותר ומהירה ביותר. כזאת, שאם ייהנו לנהל את אתרם דרך המערכת.