Default-Wert des Kommentar-Inputfeldes löschen

  • Liebes Forum,

    nachdem ich mich nun schon viel zu lange mit diesem kleinen Problem beschäftigt habe, werde ich aufgeben und wende mich hilfesuchend an euch.

    Das "Website"-Feld in meiner comments.php sieht derzeit so aus:

    PHP
    <input type="text" name="url" id="url" value="<?php if ($comment_author_url) {echo $comment_author_url;} else {echo 'Website';}; ?>" onfocus="this.value=(this.value=='Website') ? '' : this.value;" onblur="this.value=(this.value=='') ? 'Website' : this.value;" tabindex="4" />

    Nun ergibt sich das Problem, dass Kommentatoren, die keine URL angeben, den Wert "Website" zugewiesen bekommen. WordPress macht daraus http://Website

    Ich könnte das Problem lösen, indem ich das onblur-Attribut löschen würde, das möchte ich aber nicht. Genauso könnte ich das neue placeholder-Attribut einsetzen, aber es wird nur über umständliche Workarounds in allen Browsern unterstützt und lässt sich in CSS nicht richtig stylen.

    Ich möchte einfach nur in einer kurzen Abfrage überprüfen, ob das Website-Feld beim Absenden noch immer den Default-Wert "Website" besitzt und diesen Wert in dem Fall löschen.

    Ich dachte, es könnte so funktionieren, aber das tut es aus irgendeinem Grund nicht:

    PHP
    <?php if ($_POST['url'] == 'Website') { unset($_POST['url']); }; ?>

    Ich bin für alle Lösungsvorschläge (evtl. auch ein Filter in der functions.php) offen.

    Vielen Dank im Voraus! :)

    • 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

  • Einfacher:

    Code
    <input type="text" [COLOR=#000000][FONT=Consolas]placeholder[/FONT][/COLOR][COLOR=#000000][FONT=Consolas]="[/FONT][/COLOR][COLOR=#000000][FONT=Consolas]Website[/FONT][/COLOR][COLOR=#000000][FONT=Consolas]" />[/FONT][/COLOR]
  • Ich könnte das Problem lösen, indem ich das onblur-Attribut löschen würde, das möchte ich aber nicht. Genauso könnte ich das neue placeholder-Attribut einsetzen, aber es wird nur über umständliche Workarounds in allen Browsern unterstützt und lässt sich in CSS nicht richtig stylen.

    Trotzdem danke, natürlich ist diese Lösung hundert Mal schöner. In ein paar Jahren dann, wenn HTML5 endlich fertigdefiniert und implementiert ist... :D

Jetzt mitmachen!

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