ברוכים הבאים. WordPress היא פרוייקט מיוחד מאוד בשבילי. כל המפתחים והתורמים האחרים מוסיפים משהו למערכת, וביחד אנחנו יוצרים משהו יפהפה שאני גאה להיות חלק בו. אלפי שעות הושקעו ב-WordPress, ואנחנו מחויבים לשפר שלה מדי יום. תודה לך על שהכנסת אותה לעולם שלך.
מאט מולנווג
לפי מיטב ידיעתי, לא קיים בנבכי הרשת העברית שום כלי נוח, יעיל, נפוץ, תקני, ובעיקר - חינמי, לניהול של בלוגים ואתרי תוכן אחרים. מכיוון שבשבוע האחרון היו לי שלושה מבחנים, החלטתי שזה יהיה זמן מתאים לנסות ליצור מערכת כזאת; התוצאה היא WordPress בעברית. הממשק כולו מתורגם לעברית - גם חלקו החיצוני, שרואים הגולשים באתר, וגם חלקו הפנימי - שרואים הכותבים. ההתקנה של WordPress אוטומטית מתחילתה ועד סופה (כלומר, רק אם לא מחשיבים כמה חלקים ידניים בהתחלה), ומלווה גם היא בהוראות מפורטות וידידודיות בעברית.
בנוסף ל-WordPress עצמה, התאמתי לעברית גם את "קובריק" של מיכאל הילמן - ערכת עיצוב כה מקסימה ופשוטה, שזה בכלל לא משנה שהיא כבר מאוד נפוצה; וגם, ערכת עיצוב שהיא ניגוד מוחלט כמעט לברירת המחדל של WordPress.
לפני שאתם מורידים אותה ועושים בה כבשלכם, הבטיחו לי דבר אחד - התייחסו אליה בעדינות; היא לא במיוחד רצתה ללמוד עברית, וזה לא היה קל לשכנע אותה (למרות שעכשיו היא מדברת עברית טובה הרבה יותר מאחרות שדיברו עברית כל חייהן). אם מדי פעם יוצאת לה מילה באנגלית, או בצרפתית אפילו, צריך להתייחס אליה בהבנה ולהסביר בנימוס שבארץ מדברים רק עברית, ובכלל זה לא קשה כלכך. היא אמנם עקשנית, אבל לומדת מהר מאוד: רק פתחו את המילון הקטן שלה, וכתבו עבורה את המילה באנגלית והתרגום בעברית; היא כבר תזכור לבד. בדרך כלל, מספיק להגיד לה רק פעם אחת...
רן יניב הרטשטיין
התרגום הזה של WordPress הוא מקורי לגמרי; הוא לא מבוסס על התרגום שעשה תומר כהן. מעבר לכך, התרגום הזה הוא שלם לגמרי - לפחות כך אני מקווה.
תהליך ה"בינאום" של WordPress מבוסס על gettext:
רשימת המילים שלה נמצאת בקובץ he_IL.mo בתיקיה /wp-includes/languages/. שימו לב שזו רשימת מילים מעובדת ולכן אי אפשר לקרוא או לערוך אותה. הרשימה המקורית, הניתנת לקריאה ועריכה, נמצאת בכתובת www.trans.co.il/wp/he_IL.po.
הקריאה לרשימת המילים נעשית מקובץ ההגדרות wp-config.php בתיקיה הראשית של WordPress, בשורה
define ('WPLANG', 'he_IL');.
בעולם טוב יותר משלנו, gettext היא מסגרת רבת עוצמה ליצירת תוכנות רב-לשוניות. במציאות, gettext היא תוצר של GNU, וככזו היא לא באמת מיועדת לשימוש אלא רק לפיתוח ותיעוד אינסופיים. זאת ועוד - WordPress עוברת תחת ידיהם של מפתחים רבים באופן קבוע, ולמרות שהגרסה $ver שמסמך זה מופץ איתה יציבה יותר מכל קודמותיה, היא איננה חפה מבאגים. לבסוף, Firefox ו-Internet Explorer סובלים מקשיים שונים ומגוונים בקריאה מימין לשמאל של אתרים מבוססי תקנים, אליהם יש לתת את הדעת בעת הפיתוח.
כדי ליישב את כל המחלוקות האלה של WordPress עם עצמה ועם העולם שסביבה, נאלצתי במקרים רבים לשנות את קוד המקור שלה ולהתאים אותו לצרכי השפה. פירוט רב יותר אודות השינויים בשלב מאוחר יותר. החרוצים שבכם יוכלו לחפש את המחרוזת "RYH" שמסמנת את רוב השינויים; או להשוות בין הקבצים שמופצים בחבילה זו לבין הקבצים בחבילה 1.2.2 של WordPress, כפי שהיא מופצת באתר http://wordpress.org.
והרי לכם שימוש, ואפילו מועיל, בשני כלים של GNU.
ההערה הנ"ל חשובה במיוחד: והיה ורציתם לעדכן את WordPress, אם תורידו מהאתר http://wordpress.org את החבילה המעודכנת ותמלאו את הוראות ההתקנה המצורפות כפשוטן, הרי שתמחקו למעשה חלקים גדולים מהתרגום, ותבטלו את רוב התיקונים והכוונונים של הכיווניות והתקניות.
"בינאום" היא המקבילה העברית ל-i18n. מכיוון שעברית היא צרכנית מסורה של אותו תהליך, שמהותו הכללית ביותר היא התאמה של תוכנה בצורה שתהיה שימושית לדובריהם של שפות רבות, אזי שמן הראוי שתציע העברית מילה מתאימה לתיאור התהליך הזה. "בנאום" היא מילה קצרה בהרבה מאשר internationalization, ולכן אפשר לכתוב את כל האותיות שלה, ואין צורך להשתמש בקיצורים.
מיד לאחר ההתקנה, הייתי ממליץ להפעיל את התוסף "Markdown". הוא ממיר טקסט ל-XHTML לפי סימנים מוסכמים בתוך הטקסט - בדומה לשיטה המקובלת באתרי וויקי רבים. מערכת Markdown מיוחדת בכך שהסימנים המוסכמים שלה לא נראים כמו קודים או תגים לא מובנים. מסמכים הכתובים ב-Markdown אמורים להיות קריאים לגמרי כקובצי טקסט, גם לפני ההמרה ל-XHTML. בנוסף לכך, Markdown גם בכלל לא מתעניינת בשפה של הטקסט, ולכן היא מתאימה מלכתחילה לכתיבה בעברית.
עוד לגבי הכתיבה - הוספתי עוד 4 כפתורים לשורת הקיצורים במסך כתיבת הסיפור. אלו הם "קטע משמאל לימין", "מילים משמאל לימין", "תו משמאל לימין" ו"תו ימין לשמאל". שני הכפתורים הראשונים יוצרים תגי XHTML שעוזרים לדפדפן לדעת באיזה כיוון נקראות פסקאות/מילים מסוימות, ובכך פותרים בעיות כיווניות מרגיזות שונות. שני הכפתורים האחרים יוצרים תווי Unicode, שעוזרים לדפדפן לדעת מה הכיוון של התו שבא אחריהם, ובכך פותרים בעיות כיווניות מרגיזות עו דיותר. עניינים אלו מורכבים למדי והרקע להבנתם רחב מכדי לתארו כאן, אבל מספיק לומר שרוב האנשים לא מכירים אותם ממילא ולכן לא תפסידו יותר מדי אם לא תכירו אותם גם אתם.
עם זאת, זכרו בעת השימוש בהם ש-Markdown לא מעבדת טקסט בתוך תגי XHTML, ולהפך - לא מעבירה תגי XHTML בתוך טקסט. תנו לכך את הדעת, ועשו שימוש נרחב ב"תצוגה המקדימה" במסך הכתיבה.
מספר החלטות שעשיתי במהלך התרגום עשויות להיות שנויות במחלוקת, לכן אציג אותן כעת:
תרגמתי את "entry" ל"סיפור". מי שלא כותב רק "קטעים" ודאי יודה לי על כך, למרות שעבור סופרים זה עשוי להיות מבלבל.
תרגמתי את "categories" ל"נושאים", ואת כל מה שקשור אליהם ניסחתי בצורה שמעודדת שימוש בהם בתור "עממיוּנים" (folksonomies). יש לציין שאפשר עדיין להשתמש בהם בתור קטגוריות בלעדיות, ולשייך כל סיפור לנושא אחד בלבד; יש מי שמוצאים נחמה בסוג כזה של סדר.
השתדלתי להמנע ככל האפשר מפניה ישירה לנמען, כדי לחסוך מעצמי את הצורך להשתמש בכינוי מין כלשהוא (בניגוד למה שעשיתי במסמך הזה). זה גורם לכל מיני תופעות מוזרים כמו "ההנהלה" במקום המנהל או המנהלת, והרבה הוראות סתמיות כמו "צריך לעשות את זה וללחוץ על זה" במקום "עשי את זה" או "לחץ על זה".
ישנם כמה מקורות מקוונים המכילים אוצר בלום של תיעוד ותמיכה בכל הקשור ב-WordPress. רק מחסום שפה דקיק ואינסופי מפריד ביניכם ובין עולם של ידע:
וויקי הוא אתר אינטרנט שכל אחד יכול לכתוב בו, והתיעוד של WordPress בוויקי גדל בזכות אינספור הכותבים שתרמו לו. הוא בדרך כלל מעודכן ומקושר היטב. עבור משתמשים חדשים, ההתמצאות הראשונית מהווה אתגר. השתמשו בשורת החיפוש בראש העמוד.
התיעוד באתר wordpress.org מייצג את כל המשאבים הרשמיים שאנו מציבים לשימוש, הכוללים מדריכים לביצוע פעולות שונות ב-WordPress. בעודי כותב מילים אלו, התיעוד עדיין לוקה בחסר, אבל אנו עושים במיטב יכולתנו להעשרת מקור הידע הזה, אז יכול להיות שעד עכשיו התיעוד הרשמי כבר מתפקע מרוב מידע.
פה מופיעים עדכונים ופריטי חדשות הקשורים ל-WordPress. שמרו סימניה ובדקו לעיתים קרובות.
בנוסף לרשימת השאלות והתשובות בוויקי ובאתר הראשי, יש גם בלוג שאלות ותשובות עליו עובדים כמה מחברי צוות התיעוד. הבלוג עצמו מבוסס על WordPress.
אם חיפשתם בכל מקום ועדיין לא מצאתם תשובה, הפורומים פעילים מאוד ומארחים קהילת מתשמשים גדולה שתוכל וודאי לעזור. כדי לעזור להם לעזור לכם, כתבו כותרות מפורטות ותמציתיות, ותארו את השאלה באופן המדויק ביותר.
לבסוף, יש גם ערוץ צ'אט מקוון, שמיועד לאנשים שמשתמשים ב-WordPress, ומדי פעם גם לסוגיות תמיכה. בקישור הנ"ל תמצאו את רוב המידע הנחוץ בשביל להתחבר אליו (irc.freenode.net #wordpresss)
PHP בגרסה 4.1, או גרסה חדשה יותר.
MySQL בגרסה 3.23.23, או גרסה חדשה יותר.
קישור ל-http://wordpress.org בעמוד הראשי...
mod_rewrite של Apache נחוצה עבור אפשרויות מסוימות.
WordPress היא ההמשך הרשמי של b2/cafélog, אותה הביא לנו מייקל ו'. המפתחים של WordPress המשיכו את העבודה. אפשר לתמוך ב-WordPress על ידי הרמת תרומה.
ברוב המקרים, ההתקנה של WordPress יכולה להתבצע כולה דרך הדפדפן. אם פעולות כמו עריכת קובצי PHP נשמעות לכם מדאיגות, פשוט נסו להעלות את כל הקבצים של WordPress לשרת ולגשת לכתובת שלה בדפדפן. עם זאת, זכרו שלא תוכלו להתחמק מדברים אלה לנצח...
פתחו את הקובץ בתיקיה ריקה.
פתחו את הקובץ wp-config-sample.php בעורך טקסט ומלאו את פרטי החיבור לבסיס הנתונים, לפי ההוראות.
שמרו את הקובץ בשם wp-config.php.
העלו את הכל לאתר.
הפעילו בדפדפן את /wp-admin/install.php - תוכנית ההתקנה יוצרת את הטבלאות הנחוצות בבסיס הנתונים. אם ההתקנה נכשלת, בדקו את את ההגדרות בקובץ wp-config.php. אם ההתקנה עדיין נכשלת, פנו לפורומים עם נתונים רבים ככל האפשר אודות ההתקנה.
רשמו את הסיסמה, או בכל אופן זכרו אותה בצורה כלשהיא.
לחצו על הקישור לעמוד הכניסה. הכניסו את שם הכניסה 'admin' ואת הסיסמה שקיבלתם בעמוד הקודם. לפי הצורך, לחצו על "פרופיל" כדי לשנות את הסיסמה.
העלו את הקבצים; הזהרו שלא לדרוס שום דבר חשוב.
הפעילו את /wp-admin/upgrade.php בדפדפן.
אין שלב שלישי.
לפני השדרוג, הכינו גיבויים של כל הקבצים ששיניתם - כמו index.php.
(הערה: עוד יותר חשוב מכך, הכינו גיבויים של כל בסיס הנתונים - לא ניסיתי את השדרוג מאז תרגום הקובץ (אין לי שום בסיס נתונים ישן שאפשר לשדרג) ויש סיכוי - קטן מאוד, אמנם - שהשדרוג יחרבש את כל מה שכתבתם. לכן, אם אתם לא יודעים איך לגבות את בסיס הנתונים - אל תמשיכו הלאה עד שתמצאו מישהו שכן יודע)
אם אתם עוברים מכל גרסה אחרי גרסה 1.0, העיצוב הקודם יעבוד בלי בעיה. מגרסאות ישנות יותר, תצטרכו לעשות כמה שינויים קטנים. השתמשו בקובץ index.php החדש להשוואה.
WordPress יודעת לייבא סיפורים ממספר מערכות אחרות. אחרי שתסיימו להתקין את WordPress לפי ההוראות הנ"ל, הפעילו את אחת מתוכנות הייבוא הבאות:
אפשרויות העיצוב רבות ועשירות מכדי לתעדן במסמך זה. יש הרבה מידע בתיעוד המקוון (רק באנגלית, בינתיים).
WordPress יודעת לעשות הרבה דברים לפי פקודות משורת הכתובת. כדי להעביר משתנים משורת הכתובת, הכניסו '?' לפני המשתנה הראשון ו'&' לפני כל משתנה נוסף. ייתכן שלעולם לא תמצאו בזה שימוש, אבל בכל זאת - טוב לדעת.
index.php?m=302907 - בשביל להציג סיפורים מחודש יולי, שנת 3029.
(הערה: וגם, יודעת לחזות סיפורים עד 1024 שנים קדימה)
index.php?m=30290701 - בשביל להציג סיפורים מ-1 ביולי, שנת 3029.
index.php?w=20 - בשביל להציג סיפורים מהשבוע ה-20 בשנה, כש-1 בינואר הוא השבוע הראשון בשנה (לפי PHP, לפחות).
index.php?p=50 - בשביל להציג את סיפור מס' 50.
index.php?s=דלת+מרתף - בשביל להציג סיפורים עם המילים "דלת מרתף".
index.php?cat=1 - בשביל להציג סיפורים ששייכים לנושא מס' 1 (נושא ברירת המחדל). אפשר להוסיף/לשנות/למחוק נושאים באמצעות ממשק הניהול שלWordPress.
index.php?author=1 - בשביל להציג סיפורים של כותב מס' 1.
index.php?p=50&page=1 - בשביל להציג את העמוד הראשון בסיפור מס' 50. אפשר להשתמש במשתנה השנה רק ביחד עם p=, ועבור סיפורים בודדים.
משתנים אחרים אפשר לערבב, למשל:
index.php?m=302907&s=כפית - בשביל להציג סיפורים עם המילה "כפית", אבל רק מיולי 3029.
ל-WordPress יש ממשק XMLRPC. נכון לעכשיו, יש תמיכה ב-Blogger API, ב-metaWeblog API, וב-MovableType API.
WordPress עושה אמולציה מלאה לממשק Blogger APIעם כמה הבדלים קטנים:
blogger.getRecentPosts עם הערך '0' (אפס) מחזירה את כל הערכים בבלוג.
blogger.getTemplate מאחזר את הקובץ $blogfilename (כפי שהוא מוגדר בקובץ ההגדרות), ואילו blogger.setTemplate דורסת אותו עם נתונים אחרים
blogger.getUsersBlogs היא פונקציה ריקה שמחזירה תמיד את '1' ואת $blogname, מכיוון ש-WordPress תומכת כרגע רק בבלוג אחד עבור כל התקנה.
אם תשתמשו ב-blogger.newPost, הסיפור יפורסם ללא כותרת, וישויך לנושא מס' 1.
עם זאת, אפשר להקליד בתוך הסיפור <title>my title</title> ו/או <category>2<category>, ובכך להגדיר כותרת 'my title' ונושא מס' 2 (מספרי הזיהוי של הנושאים מופיעים ברשימת הנושאים בממשק הניהול). WordPress תמחק את השורות האלה מהסיפור לפני הפרסום.
metaWeblog API ו-MovableType API עובדים, מלבד הסוגיות הבאות:
metaWeblog.newMediaObject, mt.getRecentPostTitles, וגם mt.getTrackbackPings עוד לא יושמו
mt.supportedTextFilters היא פונקציה ריקה שמחזירה מחרוזת ריקה
אין תמיכה במילות מפתח עבור MovableType API
סיפורים מחולקים ("Extended entries") ב-MovableType API מומרים אוטומטית מ/אל תגי <!--more--> של WordPress.
אפשר לפרסם סיפורים אל WordPress באמצעות כלים כמו BlogBuddy, Bloggar, WapBlogger (לכתיבה מטלפון סלולרי עם Wap!), Radio Userland (ואפשר להשתמש גם באפשרויות "email-to-blog" של Radio), Zempt, NewzCrawler, ועוד כלים אחרים שתומכים בממשקים הנ"ל! :)
הנתיב והכתובת של XMLRPC: אם הממשק של WordPress נמצא בכתובת http://example.com/me/wp-login.php, אז:
שרת (Server): http://example.com/ (כלים מסוימים רוצים רק את החלק 'example.com')
נתיב (Path): /me/xmlrpc.php
כתובת מלאה (על כל מקרה שלא יהיה...): http://example.com/me/xmlrpc.php
אפשר לכתוב לאתר דרך דואר-אלקטרוני! פתחו את ממשק הניהול והכנסו למסך האפשרויות "כתיבה", ומלאו שם את ההגדרות הנחוצות. אחרי זה, מצאו דרך להפעיל את wp-mail.php מדי פרק זמן קבוע. אפשר לעשות את זה עם cron, אם יש לכם אפשרות כזאת (תלוי בספק שירותי האירוח), או באמצעות שירותי ניטור אתרים, שיבדקו את הכתובת wp-mail.php באתר שלכם באופן קבוע.
הכתיבה עצמה פשוטה יותר: כל דואר שישלח לכתובת שתבחרו יפורסם כסיפור באתר, והנושא שלו יהיה הכותרת. כדאי לשמור על הכתובת בסוד. המערכת תמחק הודעות ברגע שהם יפורסמו באתר.
אפשר לפתוח או לסגור את האתר להרשמה של משתמשים חדשים, תחת אפשרויות כלליות. אם ביטלתם את "כל מי שנרשם יכול לכתוב סיפורים", תצטרכו להעלות את הדרגה של כל משתמש או משתמשים כדי שהם יוכלו לכתוב. לחצו על הפלוס שליד השם שלהם בעמוד הש המשתמשים.
0 - משתמש חדש
1 - משתמש יכול לכתוב סיפורים ולערוך ולמחוק סיפורים של עצמו
5+ - מנהל; יכול לכתוב סיפורים ולערוך ולמחוק סיפורים של אחרים, ולשנות אפשרויות.
כל משתמש שדרגתו גבוהה מ-1 יכול לערוך ולמחוק סיפורים של משתמשים בדרגה נמוכה יותר, ולהעלות אותם בדרגה. לדוגמה - משתמש בדרגה 2 הוא לא מנהל, אבל הוא יכול לערוך סיפורים של משתמשים בדרגה 1, ולקדם משתמשים בדרגה 0 לדרגה 1.
ברוב המקרים, כדאי שכל המשתמשים יהיו בדרגה 1.
בכל שאלה, הצעה, הערה, או (לאא!) באג, פנו לפורומים (באנגלית)
WordPress כוללת ממשק רב עוצמה לתוספים, וקל מאוד עכשיו לכתוב הרחבות לקוד. מפתחים המעוניינים לנצל את האפשרות הזו מוזמנים לעיין בתיעוד ב וויקי. כמעט בכל המקרים, אין צורך לשנות את הקוד המקורי.
WordPress is released under the GPL (see license.txt).