2010-11-18 12 views
16

मैं थोड़ा खो रहा हूँ।Wordpress - प्रदर्शित विशिष्ट विजेट

चलो कहते हैं कि मैं एक dynmic पाद-siderbar करते हैं। अभी तक आसान है।

<footer> 
    <?php get_sidebar("name") ?> 
</footer> 

इसे पाद लेख में हटा देता है।

लेकिन यहाँ हम कर रहे हैं। मैं अपने ग्रिड के अंदर प्रत्येक विजेट चाहते हैं:

 <footer> 
     <div style="width: 100px:"> 
      <div style="width: 25%">First widget here</div> 
      <div style="width: 25%">Second widget here<</div> 
      <div style="width: 25%">Third widget here<</div> 
      <div style="width: 25%">Fourth widget here<</div> 
      </div> 
     </footer> 

तो get_sidebar एक विकल्प अब है, क्योंकि यह एक पंक्ति में सभी विजेट प्रदर्शित करता है नहीं है। और मैं खुद विजेट को संपादित नहीं करना चाहता हूं।

वे विषयों में क्या है कि कैसे?

धन्यवाद।

उत्तर

15

आप इस के लिए 'the_widget' समारोह का उपयोग कर सकते हैं:

<?php the_widget($widget, $instance, $args); ?> 

अधिक जानकारी Wordpress Codex - The_Widget reference पर पाया जा सकता।

<ul id="sidebar"> 
<?php if (!dynamic_sidebar()) : ?> 
    <li>{static sidebar item 1}</li> 
    <li>{static sidebar item 2}</li> 
<?php endif; ?> 
</ul> 

फिर आप पाद लेख भर में साइडबार विगेट्स स्थिति सीएसएस स्टाइल इस्तेमाल कर सकते हैं: Function Reference/dynamic sidebar « WordPress Codex

आप उस पृष्ठ पर विधि का उपयोग करते -

+2

अच्छा विचार है, लेकिन जहाँ तक मुझे पता है the_widget पहले पैरामीटर के रूप विजेट नाम की आवश्यकता है और मैं नहीं जानता कि क्या पाद लेख में उपकरणों के नाम होगा। मेरे पास साइडबार नाम है। – fomicz

+2

क्या आपने मौजूदा विजेट को प्रदर्शित करने के लिए the_widget का उपयोग करने का प्रबंधन किया था (एक नया बनाने के बजाय)? आपने इसे कैसे प्राप्त किया? – NPC

+1

उदाहरण के लिए आप क्या कहते हैं और $ args? आप कैसे जानते हैं कि क्या रखना है। – ahnbizcad

2

यह रूप में अच्छी तरह एक अच्छा संदर्भ है। निम्नलिखित ... शामिल करने के लिए

संपादित

अरास थीम सीएसएस:

#footer    { margin: 20px auto 0; width: 980px; background: #ECEBE6; padding-bottom: 10px; border: 1px solid #CCC; } 
#footer .widgetcontainer { padding: 5px 10px; min-width: 150px; } 
.no-js #footer .widgetcontainer { height: 190px; } 
#footer .widgettitle { background: none; border: none; font-size: 14px; color: #444; padding: 0 0 10px; letter-spacing: -1px; } 
#footer .widgetcontent { font-size: 12px; background: none; padding: 0; border: none; } 
#footer .footer-message { margin: 0; padding: 10px 15px 0; font-size: 11px; } 
#footer .footer-message p { margin: 0 0 0.5em; } 
#footer .footer-message .floatright { margin-left: 20px; } 
#footer-sidebar  { overflow: hidden; margin: 10px 10px 0; padding: 0 0 10px; border-bottom: 1px solid #CCC; } 
#footer-sidebar .widgetcontainer { float: left; margin: 0; max-width: 250px; } 
#footer-sidebar ul { list-style: none; margin: 0; padding: 0; } 
#footer-sidebar li { margin: 0 0 3px; } 

पाद कोडिंग:

<ul id="footer-sidebar" class="clearfix xoxo"> 
     <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar('Footer')) : ?> 
     <li></li> 
    <?php endif; ?> 
</ul> 

विषय में यह तो भर में विगेट्स स्थानों पन्ना।

+0

धन्यवाद, कुछ घंटों के लिए कोडेक्स खोद रहा है, लेकिन अभी भी कोई भाग्य नहीं है। – fomicz

+0

ऊपर संपादित देखें, यह थोड़ा और सहायक हो सकता है। –

+0

यदि आप Arras विषय पर एक नज़र रखते हैं तो वे एक ही विचार को पाद लेख में चला रहे हैं - http://demo.arrastheme.com/ –

0

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

<?php dynamic_sidebar('sidebar-1'); ?> 
0

आप को प्रतिबंधित करने या किसी भी पृष्ठों और उपकरणों पर विगेट्स दृश्यता को नियंत्रित करने विजेट विकल्प प्लगइन का उपयोग कर सकते हैं; भंडार पर मुफ्त में उपलब्ध: https://wordpress.org/plugins/widget-options/। या widget_display_callbackhttps://developer.wordpress.org/reference/hooks/widget_display_callback/ का उपयोग करने का प्रयास करें। आशा है कि ये आपकी मदद करेगा।

function custom_display_callback($instance, $widget, $args){ 
    if(is_page()){ 
     return false; 
    } 
    return $instance; 
} 
add_filter('widget_display_callback', 'custom_display_callback', 50, 3); 

enter image description here

संबंधित मुद्दे