Hallo zusammen
Ich habe eine kleine Frage betreffend Widgets.
Ist es möglich Widgets in die "Standart-Sidebar" einzubauen?
Wenn ich Widgets in die Sidebar "ziehe", wird ja automatisch eine neue erstellt.
Das möchte ich verhindern und die Widgets in die "Standart-Sidebar" einbauen!
Vielen Dank im Vorraus für die Hilfe :)
MfG SB
Widgets in "Sidebar" einbauen
-
-
- Gerade eben
- Anzeige
Hallo!
Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.
- ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
- ✔️ Deutsche Server & DSGVO-konform
- ✔️ Persönlicher Support (kein 0815-Ticket-System)
-
Du kannst statische Inhalte vor oder nach dem Widgets-Bereich haben.
Widgetizing*Themes « Automattic
Vorletzter Absatz, am Beispiel der Suchbox.Ganz kurz auch auf deutsch erklärt:
WordPress Deutschland FAQ » Wie kann ich mein Theme Widget-fähig machen? -
Erst mal vielen Dank für deine Hilfe.
Leider hat mir dein Rat nicht viel weitergeholfen. Ich habe zwar nun mehrere Sidebars, aber die Standard Sidebar verschwindet sobald ich ein Widget einfüge.
Liegt wahrscheinlich an der sidebar.php meines Themes. Dort sind diese "Standards" eingefügt.
Was muss ich anstellen, damit diese nicht beim einfügen der Widgets verschwindet?
Habe den Code meiner Sidebar mal eingefügt als Anhang. -
Nicht mehrere Sidebars. Du kannst statische bereiche festlegen. Diese stehen außerhalb von
PHP<?php if ( !function_exists('dynamic_sidebar') : ?> <!-- many lines of code here --> <?php endif; ?>In deinem Fall:
PHP
Alles anzeigen<!-- begin sidebar --> <div id="side"> <ul> [COLOR="SeaGreen"][B] <!-- static contents may be here ... -->[/B][/COLOR] <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?> <li id="search"> <h2> <?php _e('Suche'); ?> </h2> <form id="searchform" method="get" action="<?php bloginfo('url'); ?>/index.php"> <div> <input type="text" name="s" size="18" /> <br/> <input type="submit" id="submit" name="Submit" value="Suchen" /> </div> </form> <li id="archives"> <h2> <?php _e('Archiv'); ?> </h2> <ul> <?php wp_get_archives('type=monthly'); ?> </ul> </li> <?php get_links_list(); ?> <li id="rss"> <h2> <?php _e('RSS-Feeds'); ?> <img src="<?php bloginfo('stylesheet_directory'); ?>/images/feed.png" width="12" height="12" border="0" alt="RSS-Feed abonnieren"/> </h2> <ul> <li><a href="<?php bloginfo('rss2_url'); ?>">Artikel (RSS)</a></li> <li><a href="<?php bloginfo('comments_rss2_url'); ?>">Kommentare (RSS)</a></li> </ul> <h2> <?php _e('Info'); ?> </h2> <ul> <li><?php wp_register('', ''); ?></li> <li><?php wp_loginout(); ?></li> <li><a href="http://gmpg.org/xfn/">XFN</a></li> <li><a href="http://wordpress.de">WordPress</a></li> </ul> </li> <?php endif; ?> [B][COLOR="#2e8b57"] <!-- ... or static contents may be here -->[/COLOR][/B] </ul> </div> <!-- end sidebar --> -
Muss ich diesen Code:
[COLOR=#000000][FONT=Courier New][COLOR=#0000cc]<?php [/COLOR][COLOR=#006600]if ( ![/COLOR][COLOR=#0000cc]function_exists[/COLOR][COLOR=#006600]([/COLOR][COLOR=#cc0000]'dynamic_sidebar'[/COLOR][COLOR=#006600]) : [/COLOR][/FONT][FONT=Courier New][COLOR=#0000cc]?> [/COLOR][/FONT]
[FONT=Courier New]<!-- many lines of code here --> [/FONT]
[FONT=Courier New][COLOR=#0000cc]<?php [/COLOR][COLOR=#006600]endif; [/COLOR][COLOR=#0000cc]?>[/COLOR] [/FONT][/COLOR][COLOR=#000000][FONT=Courier New]in der Functionts.php einfügen? Wenn ja, erhalte ich immer einen Parse Error[/FONT][/COLOR]
-
Nein, ich bin in der sidebar.php. Die functions.php ist nur für das "Registrieren" der dynamischen Sidebars verantwortlich, d.h. das WP weiß, dass das Theme dynamische Sidebars hat.
-
wo muss ich denn diesen code egnau einfügen in der sidebar.php?
bei [COLOR=#2e8b57]<!-- static contents may be here ... --> [/COLOR][COLOR=black]? oder wo genau?[/COLOR] -
Da wo ich die Kommentare farblich hervorgehoben habe, dort kannst du statische Inhalte einbauen. Also am Anfang oder am Ende der sidebar.php.
-
also irgendwie bin ich unfähig!
wenn ich den code einfüge, bekomme ich wieder parse error ...
also eigentlech will ich es ja am anfang einfügen, wäre nett wenn du mir den gesamten code nennen könntest (also die sidebar) -
Dieser Code gibt dir eine Sidebar, mit den Standard-Inhalten am Ende, und am Anfang einen Widgetfähigen Bereich:
PHP
Alles anzeigen<!-- begin sidebar --> <div id="side"> <ul> [COLOR="Red"]<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?> <?php endif; ?> [/COLOR] <li id="search"> <h2> <?php _e('Suche'); ?> </h2> <form id="searchform" method="get" action="<?php bloginfo('url'); ?>/index.php"> <div> <input type="text" name="s" size="18" /> <br/> <input type="submit" id="submit" name="Submit" value="Suchen" /> </div> </form> <li id="archives"> <h2> <?php _e('Archiv'); ?> </h2> <ul> <?php wp_get_archives('type=monthly'); ?> </ul> </li> <?php get_links_list(); ?> <li id="rss"> <h2> <?php _e('RSS-Feeds'); ?> <img src="<?php bloginfo('stylesheet_directory'); ?>/images/feed.png" width="12" height="12" border="0" alt="RSS-Feed abonnieren"/> </h2> <ul> <li><a href="<?php bloginfo('rss2_url'); ?>">Artikel (RSS)</a></li> <li><a href="<?php bloginfo('comments_rss2_url'); ?>">Kommentare (RSS)</a></li> </ul> <h2> <?php _e('Info'); ?> </h2> <ul> <li><?php wp_register('', ''); ?></li> <li><?php wp_loginout(); ?></li> <li><a href="http://gmpg.org/xfn/">XFN</a></li> <li><a href="http://wordpress.de">WordPress</a></li> </ul> </li> </ul> </div> <!-- end sidebar -->
Der rot markierte Bereich gibt die Widgets aus, der Rest ist immer da. -
Ahh ok
So jetzt hat es endlich geklappt!
Nun kann ich die Widgets oben dran einfügen :D
Vielen Dank für die Hilfe -
Okay, ich klinke mich hier mal ein, weil ich offenbar den Wald vor lauter Bäumen nicht sehe...!? :oops:
Die von mir verwendeten Themes (Barthelme und Cutline) sind angeblich widgetfähig und der Code sieht auch danach aus -- aber wann immer ich irgendein Widget aktiviere, wird nur noch dieses in der Sidebar dargestellt und der ganze restliche (Standard-)Inhalt ist verschwunden...!? Irgendwas übersehe ich als offensichtlich...
Hier der Code eines der beiden Blogs bzw. der entsprechenden Sidebar:
PHP
Alles anzeigen<div id="primary" class="sidebar"> <ul> <?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : // Begin Widgets; displays widgets or default contents below ?> <?php if ( !is_front_page() || is_paged() ) { // Displays a home link everywhere except the home page ?> <li id="home-link"> <h3><a href="<?php bloginfo('home') ?>" title="<?php echo wp_specialchars(get_bloginfo('name'), 1) ?>"><?php _e('Home', 'barthelme'); ?></a></h3> </li> <?php } ?> <!-- <?php wp_list_pages('title_li=<h3>'.__('Pages').'</h3>&sort_column=menu_order' ) ?> --> <li id="categories"> <h3><?php _e('Categories', 'barthelme'); ?></h3> <ul> <?php wp_list_cats('sort_column=name&hierarchical=1') ?> </ul> </li> <li id="tag-cloud"> <h3><?php _e('Tags', 'barthelme') ?></h3> <p><?php wp_tag_cloud() ?></p> </li> <?php wp_list_bookmarks('title_before=<h3>&title_after=</h3>') ?> <li id="feed-links"> <h3><?php _e('RSS Feeds', 'barthelme') ?></h3> <ul> <li><a href="<?php bloginfo('rss2_url') ?>" title="<?php echo wp_specialchars(get_bloginfo('name'), 1) ?> RSS 2.0 Feed" rel="alternate" type="application/rss+xml"><?php _e('All posts', 'barthelme') ?></a></li> <li><a href="<?php bloginfo('comments_rss2_url') ?>" title="<?php echo wp_specialchars(bloginfo('name'), 1) ?> Comments RSS 2.0 Feed" rel="alternate" type="application/rss+xml"><?php _e('All comments', 'barthelme') ?></a></li> </ul> </li> <li id="meta"> <h3><?php _e('Meta', 'barthelme') ?></h3> <ul> <?php wp_register() ?> <li><?php wp_loginout() ?></li> <?php wp_meta() // Do not remove; helps plugins work ?> </ul> </li> <li id="search"> <h3><label for="s"><?php _e('Blog Search', 'barthelme') ?></label></h3> <form id="searchform" method="get" action="<?php bloginfo('home') ?>"> <div> <input id="s" name="s" type="text" value="<?php the_search_query() ?>" size="10" /> <input id="searchsubmit" name="searchsubmit" type="submit" value="<?php _e('Search', 'barthelme') ?>" /> </div> </form> </li> <?php endif; // End Widgets ?> </ul> </div>Für mich sieht das eigentlich richtig aus, aber dennoch kann ich keine Widgets nutzen ohne dass es mir den Rest "zerschießt"...! :|
Kann mir bitte jemand mal unter die Arme greifen...? Danke!!
:: M ::
-
Hmmh, stelle ich mich da wirklich so blöd an, dass die Antwort zu offensichtlich wäre...?! Oder bin ich nur so dumm, dass ich keiner Antwort würdig bin...?! :mrgreen:
Wahrscheinlich sitze ich einfach nur auf dem Schlauch, aber bislang konnte ich das mit den Widgets jedenfalls nicht auf die Reihe bekommen...! Das Problem hatte ich früher allerdings nicht, als die Widgets noch nicht "integriert" waren...!? Wahrscheinlich habe ich das 'neue System' immer noch nicht verstanden... :?
:: M ::
-
Die meisten Themes sind so konzipiert, dass man entweder den Standard hat und von Hand selbst Code in die sidebar schreibt oder aber Widgets benutzt werden. Wenn also auch nur ein Wigdet benutzt wird, dann blendet sich der Standard aus und alles sollte über Widgets gelöst werden.
PHP<?php if (!function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : // Begin Widgets; displays widgets or default contents below ?> //alles hier ist standard !!! <?php endif; // End Widgets ?>Wenn [COLOR=#000000][COLOR=#0000cc]function_exists[/COLOR][COLOR=#006600]([/COLOR][COLOR=#cc0000]'dynamic_sidebar'[/COLOR][COLOR=#006600])[/COLOR][/COLOR] true sagt und [COLOR=#000000][COLOR=#0000cc]dynamic_sidebar[/COLOR][COLOR=#006600]()[/COLOR][/COLOR] true sagt, dann werden die Standards nicht dargestellt, denn die Darstellung ist durch [COLOR=#000000][COLOR=#0000cc]dynamic_sidebar[/COLOR][COLOR=#006600]()[/COLOR][/COLOR] schon als konfigurierte Widgets erfolgt.
Hoffe, das Konzept verständlich erklärt zu haben.
-
Okay, dann habe ich das wohl falsch verstanden...!? Ich war davon ausgegangen, ich könnte (bei so genannten "widget-kompatiblen" Themes) zu den bestehenden Infos Widgets hinzufügen...!?
Also muss ich stattdessen letztendlich für alles, was sich bislang in den Sidebars befindet, Widgets als Ersatz finden, wenn ich weitere/andere Widgets verwenden möchte...? Richtig so...?!
:: M ::
-
Ein klares jein :-D
Das wäre der eine Weg, der andere Weg wäre, dass du vor oder hinter die Anfangs- bzw. Endzeile, die ich oben gezeigt hab, deinen Code einbaust.
Dann sind aber entweder deine Widgets oben und der Rest drunter oder umgekehrt. Nur mischen geht dann nicht. -
Okay, erstmal bzw. nochmals Danke für die Aufklärung...! :)
Da der Entwickler des Themes so nett war, alle Sidebar-Erweiterungen auch als Widgets beizulegen, habe ich jetzt quasi komplett auf Widgets umgestellt, und seine entsprechend ein- und neue hinzugefügt...! So passt es jedenfalls...
Und für die Zukunft weiß ich dann ja Bescheid...! ;)
:: M ::
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!