2011-07-20 20 views
8

मैं ड्रूपल 7 में अपने पाद लेख क्षेत्र में एक .clearfix कक्षा जोड़ने की कोशिश कर रहा हूं। क्या ऐसा करने का कोई तरीका है?एक ड्रूपल 7 क्षेत्र में कक्षा कैसे जोड़ें?

मैं वर्तमान में मेरे पाद लेख क्षेत्र मुद्रित करने के लिए निम्नलिखित का उपयोग कर रहा:

<?php print render($page['footer']); ?> 

कौन सा आउटपुट:

<div class="region region-footer"> 
    <div id="block-1>....</div> 
    <div id="block-2>....</div> 
</div> 
+0

तुम सिर्फ सीएसएस परिवर्तित करने का प्रयास कर रहे हैं, या आप कोशिश कर रहे हैं कुछ PHP शामिल करने के लिए? –

उत्तर

6

अपनी थीम निर्देशिका में region.tpl.php (मॉड्यूल/सिस्टम निर्देशिका में पाया गया) की प्रतिलिपि बनाएँ। फिर इसके अंदर सबकुछ कॉपी करें और एक नई फाइल बनाएं। उस फ़ाइल में पेस्ट करें और टेम्पलेट में आपको कोई भी बदलाव दें। एक बार समाप्त हो जाने के बाद, इसे क्षेत्र - footer.tpl.php के रूप में सहेजें और परिवर्तन देखने के लिए अपनी साइट पर कैश साफ़ करें।

region.tpl.php (संभव चर समझा टिप्पणियों का एक बहुत के साथ) शामिल हैं:

<?php if ($content): ?> 
    <div class="<?php print $classes; ?>"> 
    <?php print $content; ?> 
    </div> 
<?php endif; ?> 

तो तुम सब करने की आवश्यकता होगी कि DIV पर एक वर्ग को जोड़ने है।

+0

बिल्कुल सही, मुझे नहीं पता था कि आप सिस्टम टेम्पलेट्स को अपने स्वयं के थीम फ़ोल्डर में कॉपी कर सकते हैं। धन्यवाद लक्ष्मण 13! –

+0

पूछने के लिए खेद है, मैंने वही किया है और यह काम करता है। लेकिन यह पाद लेख क्षेत्र से कुछ divs (# footer-wrapper, # footer-inner) को हटा देता है। और यह कक्षा से जोड़े गए आईडी से आईडी फूटर को भी हटा देता है। क्या यह सही है? या मेरे पास उपयोग की जा रही कस्टम थीम के साथ कुछ करना है। –

+0

मुझे लगता है कि आप जिस कस्टम थीम का उपयोग कर रहे हैं उसके साथ करना है। इसमें अपने क्षेत्र टेम्पलेट्स (विशेष रूप से पाद लेख) हो सकते हैं। उस स्थिति में, आप इसके बजाय उस टेम्पलेट को बदल सकते हैं। – Laxman13

0

कोशिश footer.php.tpl फाइल करने के लिए शामिल हैं जोड़ने। आपको इसे बनाना पड़ सकता है।

4

यदि आप एक हुक का उपयोग करते हैं तो यह बेहतर होता है, आप template_preprocess_region का उपयोग कर सकते हैं।

32

यहाँ कोड का टुकड़ा है:

function MY_THEME_NAME_preprocess_region(&$variables, $hook) { 
    if($variables['region'] == "MY_REGION_NAME"){ 
     $variables['classes_array'][] = 'MY_CLASS_NAME'; 
    } 
} 

या आप क्षेत्रों के सभी में वर्ग सम्मिलित हैं:

function MY_THEME_NAME_preprocess_region(&$variables, $hook) { 
    $variables['classes_array'][] = 'MY_CLASS_NAME'; 
} 
+3

यह सबसे कुशल और सही तरीका है। – jpshayes