0

こんにちは、私はこれが初めてで、検索フォームを作成しようとしていますが、関数phpファイルに問題があるようです。問題が「if」ステートメントにあることは事実ですが、それを機能させるために使用できる他のオプションがあるかどうかはわかりません。コードは次のとおりです。

function my_search_form( $form ) {
$form = '<form role="search" method="get" id="searchform" action="' . home_url( '/' ) . '" >
<input type="text" name="s" id="search" align="center" size="30" value="' . get_searchform() . '" onfocus="if(this.value ==  . 'search & hit enter' . ) { this.value =  . '' . ; }" onblur="if(this.value ==  . '' . ) {this.value =  . 'search & hit enter' . ; }" />
<input type="hidden" value="post" name="post_type" id="post_type" />
</form>';

return $form;

}

add_filter( 'get_search_form', 'my_search_form' );
4

1 に答える 1

0
search & hit enter

この部分は無効なコードです。エスケープする必要があります

function my_search_form( $form ) {
    $form = '
    <form role="search" method="get" id="searchform" action="' . home_url( '/' ) . '" >
        <input type="text" name="s" id="search" align="center" size="30" value="' . get_searchform() . '" onfocus="if(this.value == \'search &amp; hit enter\') { this.value = \'\'; }" onblur="if(this.value == \'\') {this.value =\'search &amp; hit enter\'; }" />
        <input type="hidden" value="post" name="post_type" id="post_type" />
    </form>';

    return $form;
}
于 2013-09-25T15:10:04.950 に答える