it-swarm.com.de

Wordpress - spezifisches Widget anzeigen

Ich bin ein bisschen verloren.

Nehmen wir an, ich habe eine dynmische Fußzeilenleiste. Einfach so weit.

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

Zeigt es in der Fußzeile an.

Aber hier sind wir. Ich möchte jedes Widget in meinem Raster:

      <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>

Daher ist get_sidebar jetzt keine Option, da alle Widgets in einer Zeile angezeigt werden. Und ich möchte die Widgets nicht selbst bearbeiten.

Wie machen sie das in Themen?

Vielen Dank.

19
fomicz

Sie können dazu die Funktion 'the_widget' verwenden:

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

Weitere Informationen finden Sie im Wordpress-Codex - The_Widget-Referenz .

16
Rhapsody

Dies ist auch eine gute Referenz - Funktionsreferenz/dynamische Seitenleiste «WordPress Codex

Wenn Sie die Methode auf dieser Seite verwenden:

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

Sie können dann das CSS-Styling verwenden, um die Sidebar-Widgets über der Fußzeile zu positionieren.

Bearbeiten, um Folgendes aufzunehmen ...

Arras Theme CSS:

#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; }

Fußzeilenkodierung:

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

Im Design werden dann die Widgets auf der gesamten Seite platziert.

2
Vince Pettit

Bitte checke mein neues Plugin aus, das ein bestimmtes Widget anzeigt.

Besuchen Sie: http://wordpress.org/extend/plugins/widget-instance/

0
Globalz

Alternativ können Sie auch verwenden:

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

Sie können das Widget Options Plugin verwenden, um die Sichtbarkeit der Widgets auf Seiten und Geräten einzuschränken oder zu steuern. kostenlos im Repository verfügbar: https://wordpress.org/plugins/widget-options/ . Oder versuchen Sie es mit widget_display_callbackhttps://developer.wordpress.org/reference/hooks/widget_display_callback/ . Ich hoffe das hilft.

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

0