(wp_dropdown_categories) onchange einfügen

  • Also, ich hab den Tag 'wp_dropdown_categories' in Benutzung. Der Tag erzeugt folgenden Quelltext

    Code
    <select name='cat' id='cat' class='postform'>
    [...]

    Allerdings würde ich liebend gern auf einen input/submit-Button verzichten und deshalb

    Code
    onChange="document.location.href=this.options[this.selectedIndex].value;"

    verwenden. Ich weiß aber nicht wie.

    Erklärung oder Alternative gern gelesen ;)

    • 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

  • 'wp_dropdown_categories' erstellt meines Wissens per default solch ein Menü. Hast du den Submit-Button hinzugefügt? Wie sieht der entsprechende Code aus?

    PHP
    <form name="catmenu" action="<?php bloginfo('url'); ?>/?cat=" method="get">
    	<?php dropdown_cats('all=Alle Kategorien'); ?>
    </form>


    erstellt bei mir z.B. ein automatisch submittendes Dropdown ohne Button.

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Naja, das select-Tag hat ja ne ID, also kannst du es auch ohne Probleme per Javascript ansprechen (z.B. getElementById) und dann den onchange-Event hinzufügen (z.B. über setAttribute).

    Die Javascript-Funktion bringst du am besten im Header unter und rufst sie dann im body-Tag mit einem onload="" auf.
    Müsste funktionieren...
    Natürlich nur, wenn Javascript an ist, aber ohne das funktioniert das was du vorhast ja sowieso nicht... :)

    Gruß

    Simon

  • nimm das hier:

    Das dürfte klappen :-)

    Doc

  • Danke!

    Wow, danke euch. Insbesondere Doc; funktioniert einwandfrei. noscript hab ich auch gleich eingesetzt, daran hätte ich sonst gar nicht gedacht.

    'wp_dropdown_categories' erstellt meines Wissens per default solch ein Menü. Hast du den Submit-Button hinzugefügt? Wie sieht der entsprechende Code aus?


    Du hast dropdown_cats verwendet - und cat will ich nicht einsetzen, weils nicht zukunftsicher ist. Deprecated sozusagen ;)
    (weiß gar nicht obs in 2.3 noch geht, ist seit 2.1 veraltet)

  • nimm das hier:

    Das dürfte klappen :-)

    Doc

    Hallo,

    es klappt wunderbar.
    Gibt es auch eine Möglichkeit dem Dropdown Menü ein width="170px" zu geben?

    Danke!

  • ja klar, am besten id zuweisen und per css formatieren {width: 170px;}


    Hallo,
    das hatte ich schon gemacht. Oder zumindest glaube ich dass Du das meinst:

    Sidebar hat 200px.
    Habe ein

    Code
    #blog-categories-dropdown {width: 170px;}


    erstellt und habe sowohl mit dem ganzen Code in einem

    Code
    <div id="blog-categories-dropdown">...</div>

    versucht als auch nur mit

    PHP
    <?php wp_dropdown_categories($cat_args . '&show_option_none= ' . __('Kategorien')); ?>

    Das Menü bleibt so "klein" wie die Kategorien "lang" sind. Sagen wir mit Allgemein, WordPress und Testen ist das Menü, würde ich schätzen, je nach Größe des Textes, aber sagen wir bei 12px um die 110-120px breit.

    Ich habe dadrunter ein Menü:

    PHP
    <form id="archiveform" action="">
    <select name="archive_chrono" onchange="window.location =
    (document.forms.archiveform.archive_chrono[document.forms.archiveform.archive_chrono.selectedIndex].value);" style="width:170px">
    <option value=''>Monatlich</option>
    <?php get_archives('monthly','','option'); ?>
    </select>
    </form>


    womit die 170er Breite wunderbar klappt. Allerdings diese Breite ist im Code selbst.

    Gibt es vielleicht eine andere Lösung, oder habe ich falsch verstanden?

    Danke

    Einmal editiert, zuletzt von costel-marian (10. November 2007 um 12:13)

  • Code
    #blog-categories-dropdown [B]select[/B] {
    width: 170px;
    }

    Betrifft <select>-Elemente innerhalb von id="blog-categories-dropdown"

    Code
    #blog-categories-dropdown [B]select[/B] {
    width: 170px;
    }

    Betrifft <select>-Elemente innerhalb von id="blog-categories-dropdown"


    Ich möchte einen Doppelpost melden... :) :p

    wpseek.com - Die WordPress-Code-Suchmaschine

Jetzt mitmachen!

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