Wie kann ich in einem WordPress-Design (mit get_search_form()) Platzhaltertext zum Suchfeld hinzufügen?

Lesezeit: 3 Minuten

Ich versuche, ein Design zu erstellen, und ich zeige ein Suchfeld in der Kopfzeile mit:

<?php get_search_form(); ?>

Gibt es eine Möglichkeit, Platzhaltertext in diesem Feld anzuzeigen?

Am Ende habe ich herausgefunden, dass WordPress ein Standardformular anzeigt, das keinen Platzhaltertext enthält, wenn ich keine Datei namens “searchform.php” in meinem Themenordner habe:

<form role="search" method="get" id="searchform" action="<?php echo home_url( "https://stackoverflow.com/" ); ?>">
    <div><label class="screen-reader-text" for="s">Search for:</label>
        <input type="text" value="" name="s" id="s" />
        <input type="submit" id="searchsubmit" value="Search" />
    </div>
</form>

Ich habe eine neue Datei namens “searchform.php” in meinem Themenordner erstellt und das Standardformular so geändert, dass es den Platzhaltertext enthält:

<form role="search" method="get" id="searchform" action="<?php echo home_url( "https://stackoverflow.com/" ); ?>">
    <div>
        <input type="text" value="" name="s" id="s" placeholder="Search gear, clothing, & more.." />
        <input type="submit" id="searchsubmit" value="Search" />
    </div>
</form>

  • Vielen Dank für das Teilen Ihrer Lösung.

    – Alexandre Bourlier

    23. Mai 2014 um 19:25 Uhr

Erstellen Sie searchform.php im Themenordner und platzieren Sie diesen Code darin

<form method="get" id="searchform" action="<?php bloginfo('url'); ?>">
<div>
<input class="text" type="text" value=" " name="s" id="s" />
<input type="submit" class="submit button" name="submit" value="<?php _e('Search');?>" />
</div>
</form>

Ändern Sie, was Sie wollen! wie Klasse, Platzhalter, Text alles, was Sie wollen, aber nicht wie Name, ID und Formularattribut ändern

Vielen Dank

  • Nett! Wusste so nicht. Danke, @vishal!

    – Rafael Cavalcante

    26. Januar 2017 um 18:23 Uhr

Benutzeravatar von Tobias
Tobias

Der WP-Codex hat eine Beispiel mit einem Platzhalter:

Wenn Ihr Design HTML5 unterstützt, was passiert, wenn es verwendet wird
add_theme_support('html5', array('search-form')), wird das folgende HTML-Formular ausgegeben. Dies ist seit WordPress 3.6 der Fall.

<form role="search" method="get" class="search-form" action="<?php echo home_url( "https://stackoverflow.com/" ); ?>">
    <label>
        <span class="screen-reader-text">Search for:</span>
        <input type="search" class="search-field" placeholder="Search …" value="" name="s" title="Search for:" />
    </label>
    <input type="submit" class="search-submit" value="Search" />
</form>

Wenn Sie keine HTML5-Tags und -Attribute verwenden möchten, können Sie Platzhalter mit JavaScript erstellen.

Das offizielles get_search_form erklärt die flexiblere Modifikation, die Sie in Ihre functions.php einfügen könnten.

schau mal hier mit CodeX-Commit.

TL;DR

Überprüfen Sie den Code unten.

function wpdocs_my_search_form( $form ) {
// replace the new form on your own.
    $form = '<form role="search" method="get" id="searchform" class="searchform" action="' . home_url( "https://stackoverflow.com/" ) . '" >
    <div><label class="screen-reader-text" for="s">' . __( 'Search for:' ) . '</label>
    <input type="text" value="' . get_search_query() . '" name="s" id="s" />
    <input type="submit" id="searchsubmit" value="'. esc_attr__( 'Search' ) .'" />
    </div>
    </form>';
 
    return $form;
}

add_filter( 'get_search_form', 'wpdocs_my_search_form' );

1403410cookie-checkWie kann ich in einem WordPress-Design (mit get_search_form()) Platzhaltertext zum Suchfeld hinzufügen?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy