מקום טוב להתחיל בו הוא הורדה של הגרסה העדכנית של דרופל בעברית.
להורדת דרופל בעבריתלשפות וגרסאות אחרות, Drupal.org
יש לנו באתר מדריכים שונים, הכוללים מדריך להתקנת דרופל על המחשב המקומי או על שרת אירוח באינטרנט, כמו גם מדריכים לעיצוב ופיתוח.
בעזרת המדריכים השונים באתר ובעזרת קבוצות הדיון שלנו, אפשר למצוא את כל המידע הנחוץ להקמה והתאמה אישית של אתרי דרופל. כדאי לבדוק גם את ערוצי התמיכה הנוספים שלנו

מיקום קטגוריות
במיקום הקטגוריות ניתן לשלוט בקלות דרך עריכת העיצוב. ערוך את קובץ node.tpl.php. פשוט תזיז אותן מההתחלה לאמצע או לסוף.
אבל אם הבנתי אותך נכון אתה רוצה גם קיבוץ קטגוריות. אני לא כל כך מבין מה זה קיבוץ קטגוריות - האם המדובר על מצב שבו יש באתר מילונים שונים שאפשר לסווג את פריט התוכן לפיהם (נניח צבע וגודל)? האם אתה מעוניין להציג את הסיווגים של כל מילון בנפרד? בכל מקרה המקום להכניס גם את זה הוא לדעתי בתוך node.tpl.php.
אמנון מאיר לבב
בניית אתרים בדרופל, ייעוץ והדרכה
אמנון-מאיר לבב - ייעוץ משולב - סוף מעשה באפיון תחילה!
אפיון מיזמי אינטרנט, ליווי פרוייקטים בדרופל וייעוץ רב-תחומי
קיבוץ מונחים
לבבי ענה לך על השאלה השנייה. לגבי הראשונה: לו היית מקליד term by vocabularies drupal בגוגל היית מגיע ל:
http://drupal.org/node/53089
(אם כי אני לא מרוצה מהקוד; כתבתי שם הערה.)
אני אנסח את זה מחדש...
<blockquote=לבבי>
האם המדובר על מצב שבו יש באתר מילונים שונים שאפשר לסווג את פריט התוכן לפיהם (נניח צבע וגודל)?
כן, ועוד המון סיווגים אחרים...
<blockquote=מופי>לבבי ענה לך על השאלה השנייה. לגבי הראשונה: לו היית מקליד term by vocabularies drupal בגוגל היית מגיע ל:
http://drupal.org/node/53089
לא היו שתי שאלות, והלינק הזה לא עונה לי על השאלה...
עכשיו שבאמת הגעתי להתעסק עם זה, אני מבין את בעיית הניסוח הראשוני שלי.
מודול FieldGroup מאפשר איחוד של שדות הCCK, בזמן עריכה או יצירת הדף התוכן.
מה שאני מחפש זה אפשרות ב-form_alter של אותו דף תוכן, לשלב את ה-taxonomy בתוך אותן קבוצות, כאילו היו חלק מהן.
במקום שיופיע בתוך קבוצה אחת ענקית שנקראת Categories.
מדובר על שאלון מעוד גדול, ויש המון סיווגים שונים, כדי לאפשר לי בשלב מאוחר יותר, חיתוכי מידע שונים...
תודה
בברכה,
מתי
מומחה ג'ומלה | אחסון דרופל
דומיינים למכירה | הכרויות
מיקום הטקסונומיות בטופס
עכשיו הבנתי.
נצרכתי לעשות דבר דומה לפני כשבועיים. כתבתי מודול של node, ובוררי הטקסונומיות ("בורר" = selector), שהוצגו בתחילת הטופס רחוק מהמקום שבו היו אמורים להשתמש בהם, נראו כנטע זר ועלולים היו להקשות על ההבנה. לכן מימשתי את hook_form_alter, ובו העברתי את הטקסונומיות, קומפלט, ממקומן המקורי אל תוך הקבוצה (קבוצה = fieldset) בה חפצתי.
אבל אצלך המצב מסובך יותר: אתה לא רוצה להעביר את הטקסונומיות קומפלט, אלא אתה רוצה להעביר כל בורר, בנפרד, ל-fieldset אחר.
במקום לתת הרצאה איך לעשות זאת, הקלדתי בגוגל drupal taxonomies fieldset והגעתי ל:
http://lists.drupal.org/archives/development/2006-06/msg00542.html
form_render
בדוק את הפונקציה form_render.
היא מאפשרת לך לארגן את הטופס איך שבא לך, עד לרמות הכי פרטניות שניתן.
לדוגמה:
<?php$output .= "<fieldset><legend>a fieldset</legend>";
$output .= form_render($form['taxonomy']);
$output .= "</fieldset>";
$output .= form_render($form);
?>
<
p>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
<
p>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
בדוק את
אפשרי, אבל, במקרה הנדון, בשיטת ה-themeing שהצעת יש למעשה הרבה יותר עבודה מאשר בשימוש ב-form_alter (וישנה גם בעית תחזוקה: אנחנו קובעים בעצמנו את סדר ה-fieldsets ואם נרצה להוסיף...)
הקישור שנתתי עושה עבודה גרועה בהדגמת העניין, אבל מדובר בהעברה פשוטה של אלמנטים במערך.
מה הקשר?
לא בדיוק הבנתי את הקשר בין הקישור שנתת לבין הבעיה שלי.
הקישור שלך מדבר על מיון לינקים...
(sort taxonony links)
בברכה,
מתי
מומחה ג'ומלה | אחסון דרופל
דומיינים למכירה | הכרויות
הקשר
הקישור מתאר בדיוק מה שאתה רוצה. מדובר שם על טפסים, לא על קישורים. אבל הוא מיועד לבעלי ידע בתיכנות. אני עסוק היום, אבל אשתדל למצוא זמן לחבר דוגמה קונקרטית.
העברת טקסונומיות
הנה הקוד שהבטחתי:
<?php
function mymodule_form_alter($form_id, &$form)
{
// Replace 'mp3' with the name of your CCK node-type.
if ($form_id == 'content_mp3_node_form') {
$vocab_placement = array(
// move each 'vid' vocabulary to the 'fieldset' fieldset.
array('vid' => 2, 'fieldset' => 'group-author'),
array('vid' => 1, 'fieldset' => 'group-author'),
array('vid' => 3, 'fieldset' => 'group-publisher'),
);
foreach ($vocab_placement as $vocab) {
$vid = $vocab['vid'];
$fieldset = $vocab['fieldset'];
$form[$fieldset]['taxonomy'][$vid] = $form['taxonomy'][$vid];
$form[$fieldset]['taxonomy']['#tree'] = TRUE;
$form[$fieldset]['taxonomy']['#weight'] = -10;
unset($form['taxonomy'][$vid]);
}
// Remove the original taxonomy fieldset if no more
// vocabularies remain in it:
if (!element_children($form['taxonomy'])) {
unset($form['taxonomy']);
}
}
}
// Increase our weight so that we see the taxonomy.module additions.
function mymodule_install() {
db_query("UPDATE {system} SET weight = 5 WHERE name = 'mymodule'");
}
?>
שמור בקובץ mymodule.module והתקן. את "mp3" שנה לשמה האמיתי של "פיסת התוכן" שלך.
בדוגמה הנ"ל אנו מעבירים שלושה סלקטורים (במערך vocab_placement שלושה איברים) של מילונים למקום אחר. שניים מהם אנו מעבירים אל fieldset בשם author, ואחד מהם אל fieldset בשם publisher (המודול fieldgroup מקדים את המחרוזת "-group" לכל fieldset שהוא יוצר). לכל מילון יש vid שעל פיו הוא מזוהה -- ועליך למצוא אותו.
נדמה לי שהדוגמה מחדדת את ההכרה שכדי לבנות אתרים בדרופל צריך לדעת גם לתכנת בדרופל.
שתי שורות המפתח הן אלה:
<?php...
$form[$fieldset]['taxonomy'][$vid] = $form['taxonomy'][$vid];
...
unset($form['taxonomy'][$vid]);
?>
הסבר: אנו מעתיקים את הפקד (פקד = widget) למקומו החדש ואח"כ מוחקים אותו. העתקה + מחיקת הישן = העברה.
הסבר על שינוי המשקל
דרופל טוען את המודולים ואת הפונקציות שבאות איתם עפ"י סדר ה-ABC. לכן, אם נקרא למודול mymodule, הוא ייטען לפני המודול taxonomy ולא יוכל לשנות את הטופס כפי שאנחנו רוצים.
לחילופין, במקום לשנות את המשקל בבסיס הנתונים, ניתן פשוט לתת למודול שם אחר, כמו transfer_taxonomy.module, או משהו כזה...
<
p>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
<
p>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
תודה
זה דומה למה שעשיתי ידני, רק שאני לא יצרתי מערך של העברות לכן הרעיון שלך יותר אלגנטי.
שאלה חיונית, משהו שעוד לא בדקתי: היא מה יקרה בזמן SUBMIT?
אני אהיה חייב להזין את הנתונים של ה-vocabularies השונים באופן ידני או שדרופל לבד יודע לעשות את השיוך בחזרה (למרות שינוי המיקום בסידור המקורי)
בברכה,
מתי
מומחה ג'ומלה | אחסון דרופל
דומיינים למכירה | הכרויות
מה זאת אומרת
מה זאת אומרת "לשייך בחזרה"?
השינוי במקום לא משנה את העובדה שאתה עורך node מסויים. לנוד הזה יש ID, והמונחים שאתה בוחר ישוייכו ל-ID הזה בכל מקרה.
<
p>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
<
p>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
הכל טוב ויפה
ותודה לכל התורמים והעוזרים.
ה-node מכיל שדות וסיווגים בדיוק במיקום שאני צריך אותם.
עכשיו צריך לבנות את טופס החיפוש ככה שמשתמש יוכל לחפש לפי אותם סיווגים.
מה הדרך הפשוטה לעשות את זה?
(השילוב של חיפוש לפי שדות פחות מעניין אותי)
בברכה,
מתי
מומחה ג'ומלה | אחסון דרופל
דומיינים למכירה | הכרויות
רעיונות
מישהו?
בברכה,
מתי
מומחה ג'ומלה | אחסון דרופל
דומיינים למכירה | הכרויות
מתי, פתח נושא
מתי,
פתח נושא חדש לצורך העניין - למען הסדר הטוב :-) .
(ובדוק אם החיפוש המתקדם המובנה של דרופל לא עונה לך כבר על השאלה)
<
p>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
<
p>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
צודק, סליחה
הנה
בברכה,
מתי
מומחה ג'ומלה | אחסון דרופל
דומיינים למכירה | הכרויות