- לינווייט - תשתיות תוכן וקהילה
- אמנון לבב - לבבי
שלום,
אני רוצה לשנות את ה- description שמופיע תחת השדות ב- form.
המעצב שלי הכין לי למעשה הכל, אבל אני נתקלת בקושי לשלב את זה בדרופל.
הוא הכין את הקוד ב- css:
#tip{
width:134px;
background:#d1eaee url(images/tip_bg1.gif) top no-repeat;
}
#tip .inner{
width:100%;
background:transparent url(images/tip_bg2.gif) bottom no-repeat;
}
#tip p{
font: 12px Arial, Helvetica, sans-serif;
color:#657680;
margin:0;
padding:2px 12px 3px 7px;
}
tp_bg1, tp_bg2 הם שני החלקים מהם מורכב ה"טיפ" החדש.
ומה שנשאר לי, למעשה, זה להגדיר את div id="tip"
ואת dic class = "inner"
ניסיתי להוסיף ב- template.php
את:
function tip($description){
return _phptemplate_callback('tip',array('description' => $description));
}
וכאן נתקעתי.
(מקווה שלא עשיתי בלאגן עם הקוד שהכנסתי כאן. האם יש דרך אחרת לעשות זאת?)
האם הפעולות שעשיתי עד כאן נכונות?
איך אני מתקדמת מכאן?
תודה, ענת
בשביל ליצור tpl, את צריכה לקרוא לפונקציית theme מסוימת. (בפוסט הראשון מופיע משהו שונה)
אם יש למשל פונקציית theme_item, את קוראת לmythemename_item, ושם מנתבת אותו ל-tpl.
החדשות הרעות הן, שבדרופל 5, אין דבר כזה theme_description.
AFAIK, בשביל לעשות דבר כזה צריך ליישם פונקציית theme עבור כל form-item (כלומר, עבור פילדסט, עבור טקסט, וכו').
לכן - נראה לי שפשוט יותר למצוא חלופה CSSית (אולי בכ"ז אפשר אימג' אחד??)
ואולי, את את טובה ב-JS, להכניס באמצעותו, למרות שאולי זה לא יותר פשוט מהדרך למעלה.
אורן זוסמן, לינווייט
לינווייט תשתיות תוכן קהילתיות
התבנית זאן, קיימת כדי לאפשר בנייה קלה של תבניות. אולי זה יתאים לך.http://drupal.org/project/zen
נסי את הקוד הבא (הימור שלי):
<?php
function theme_form_element($element, $value) {
$output = '<div class="form-item">'."\n";
$required = !empty($element['#required']) ? '<span class="form-required" title="'. t('This field is required.') .'">*</span>' : '';
if (!empty(
$element['#title'])) {
$title = $element['#title'];
if (!empty($element['#id'])) {
$output .= ' <label for="'. $element['#id'] .'">'. t('!title: !required', array('!title' => filter_xss_admin($title), '!required' => $required)) ."</label>\n";
}
else {
$output .= ' <label>'. t('!title: !required', array('!title' => filter_xss_admin($title), '!required' => $required)) ."</label>\n";
}
}
$output .= " $value\n";
/* This is my change: */
if (!empty($element['#description'])) {
$output .= ' <div class="description tip"><div class="inner">'. $element['#description'] ."</div></div>\n";
}
$output .= "</div>\n";
return
$output;
}
?>
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
דבר נוסף - אל תשתמשי ב- #tip מכיוון שיהיה לך יותר מאחד כזה בטופס. השתמשי ב-class.
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
רגע - עוד נסיון - היתה לי טעות בקוד שצירפתי קודם:
שם הפונקציה צריך להתחיל ב-phptemplate במקום ב-theme, והפונקציה צריכה לשבת בקובץ template.php שבתיקית העיצוב.
זהר סטולר, לינווייט
לינווייט תשתיות תוכן קהילתיות
| סוג | נושא | מאת | תגובות | התעדכן |
|---|---|---|---|---|
| שאלה | אני מחפש לקבל ייעוץ בנוגע לשימוש בדרופל (תמורת תשלום) | yorame | 2 | לפני 30 דקות 35 שניות |
| שאלה | Primary Links - איך להוריד את הכותרת? | ori | 1 | לפני 2 שעות 58 דקות |
| שאלה | טרנזילה | yanivnizry | 13 | לפני 13 שעות 6 דקות |
| אתר | לאן היום - לוח אירועים המתעדכן על ידי הגולשים | avior | 0 | לפני 13 שעות 27 דקות |
| שאלה | מספר שאלות | ido10 | 0 | לפני 16 שעות 19 דקות |
| שאלה | האם יש מודול שמציג את כמות התכנים באתר? | yorame | 2 | לפני 18 שעות 59 דקות |
| שאלה | איך משנים את התוכן של הדף הראשי? | wualla | 8 | לפני 20 שעות 25 דקות |
| שאלה | הצגת שדה CCK בתוך התוכן של הNODE | Tomim | 2 | לפני 22 שעות 23 דקות |
| שאלה | דרוש מפתח דרופל להקמת אתר חדש | agiveon | 0 | לפני יום אחד 10 שעות |
| שאלה | שיפור במהירות של דרופל ישראל ודרופל העולמית | kobitriki | 8 | לפני יום אחד 10 שעות |
בעניין: בעיה בשינוי העיצוב של description
למה לא פשוט לשנות את ה-css של description? במקום לקרוא לו 'tip' ולנסות להוסיף אותו דרך הטמפלייט.
שנית- אם את רוצה לשנות את משתני הטמפלייט את צריכה את http://api.drupal.org/api/function/_phptemplate_variables/5
הפונקציה שקראת לה, מטרתה היא ליצור קובץ tpl מיוחד עבור מה שאת רוצה להציג.
אורן זוסמן, לינווייט
לינווייט תשתיות תוכן קהילתיות
description
תודה, אורן.
אכן אני יוצרת קובץ tpl מיוחד בו מוגדרים tip , inner
הסיבה שאני לא יכולה להסתפק בשינוי ה- css
היא שהרקע מורכב משני אימג'ים - עליון ותחתון.
הבעיה שלי היא בקובץ ה- tpl
אני לא בטוחה מה צריך להיות שם.
ניסיתי להגדיר את tip , inner ואז:
<?phpif ($description) {
print ' <div id="tip"> <div class="inner"> '. $description ."</div>\n";
}
?>
ללא הצלחה