Eigenes Search-Widget in der functions.php registrieren

  • Theme-eigenes Search-Widget in der functions.php registrieren - Wie?

    Tag, ihr Pros.

    Folgendes: Ich bin gerade dabei, ein Theme zu modifizieren und habe dafür auch das Blogsuche-Formular der Sidebar angepasst, dass es jetzt so aussieht (den UL- und LI-Schnickschnack drumherum lass' ich mal weg):

    PHP
    <form method="get" id="searchform" action="<?php bloginfo('url'); ?>/">
    <div>
    <input type="text" value="Suche..."
    onfocus="if ( value == 'Suche...' ) { value = ''; }"
    onblur="if ( value == '' ) { value = 'Suche...'; }"
    name="s" id="s" />
    <input type="submit" id="searchsubmit" value="&raquo;" /></div>
    </form>
    <br /><br />

    Soweit bin ich zufrieden. Jetzt stehe ich allerdings vor dem Problem, dass ich das Formular für die Blogsuche gerne auch identisch als Widget hätte.
    In der Anleitung bei Automattic zum "Widgetizen" von Themes steht, dass man die Standard-Widgets durch Theme-eigene per functions.php ersetzen kann.


    Zitat

    You can do this with any part of the theme’s sidebar, or all of them. Here’s an example of how to do this:

    PHP
    function widget_mytheme_search() {
    ?>
        << PASTE YOUR SEARCH FORM HERE >>
    <?php
    }
    if ( function_exists('register_sidebar_widget') )
        register_sidebar_widget(__('Search'), 'widget_mytheme_search');

    Nun habe ich das naheliegende gemacht und obigen ersten Codeschnipsel in untigen zweiten Codeschnipsel, und zwar an die Stelle mit dem PASTE YOUR SEARCH FORM HERE, eingefügt. Aber was ist? Nada. Alles bleibt beim alten im Blog wenn Widgets an sind, sprich: Die hässliche Standardsuchbox, die mir auch irgendwie buggy* scheint, wird angezeigt. Nun ist PHP eine Fremdsprache für mich und ich wage zu hoffen, dass mir irgendwer von euch sagen kann, ob und wenn ja was ich syntaktisch falsch gemacht habe. Hier nochmal, weil's so schön ist, der komplette Inhalt meiner functions.php:


    ___
    *Das scheint nur aufzutreten, wenn zwischen Such-Box und Submit-Button ein Zeilenumbruch stattfindet - sprich: ein zu langer Text auf dem "Suche starten"-Button sprengt das ganze Sidebar-Layout.

    Einmal editiert, zuletzt von maloXP (7. November 2007 um 02:34)

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

    Mehr erfahren

  • Entferne mal das Such-Widget (Admin - Design - Widgets) aus der aktuell verwendeten Liste der Widgets. Dann füge es erneut hinzu. War bei mir die Lösung. Als Codebeispiel habe ich zur Probe die Funktion/Funktionsregistrierung aus einem anderen Theme genommen (und in functions.php eines anderen Themes eingefügt).

  • So, jetzt hatte ich das Problem auch noch mal.

    Lösung:
    in Admin -> Design -> Widgets gibt es "Suchen" 2 mal!

    Eines ist das default, das andere offensichtlich das selbsterstellte/registrierte.
    (Im Link des "+/-" Zeichens in der Widgetliste ist der Unterschied ev. im Parameter "add=..." zu sehen.)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!