ワードプレス関数comment_form関数を使用しながら、HTML要素で送信ボタンをラップする方法はありますか。
$comments_args = array(
'id_form' => 'main-contact-form',
'class_form' => 'contact-form',
'class_submit' => 'btn btn-primary btn-lg',
'label_submit' => 'Add Comment',
'fields' => $fields,
'title_reply_before' => '<div class="message_heading"><h4>',
'title_reply_after' => '</h4><p>Make sure you enter the(*)required information where indicate.HTML code is not allowed</p></div>',
'comment_field' => '
<div class="row"><div class="col-sm-7">
<div class="form-group">
<label>Message *</label>
<textarea name="message" id="message" required="required" class="form-control" rows="8"></textarea>
</div>
</div>'
);
comment_form($comments_args);
送信ボタンの出力コードは次のようにします。
<div class="form-group">
<input type="submit" class="btn btn-primary btn-lg>
</div>
comment_form
function'ssubmit_button
パラメータを使って送信ボタンのHTMLを変更することができます。
submit_button
のデフォルトのHTMLは
<input name="%1$s" type="submit" id="%2$s" class="%3$s" value="%4$s" />
このようにコードを変更することができます。
$comments_args = array(
....
'submit_button' => '<div class="form-group">
<input name="%1$s" type="submit" id="%2$s" class="%3$s" value="%4$s" />
</div>'
....
);
更新:
%1$s
、%2$s
などについて.
comment_form() sourceを見ると、 submit_button
がこのようにsprintfを通過していることがわかります。
$submit_button = sprintf(
$args['submit_button'],
esc_attr( $args['name_submit'] ),
esc_attr( $args['id_submit'] ),
esc_attr( $args['class_submit'] ),
esc_attr( $args['label_submit'] )
);
テーマのfunctions.phpファイルのコードの下に配置すると、divの中に送信ボタンが折り返されます。
// define the comment_form_submit_button callback
function filter_comment_form_submit_button( $submit_button, $args ) {
// make filter magic happen here...
$submit_before = '<div class="form-group">';
$submit_after = '</div>';
return $submit_before . $submit_button . $submit_after;
};
// add the filter
add_filter( 'comment_form_submit_button', 'filter_comment_form_submit_button', 10, 2 );
さらに更新された答え:
'submit_field' => '<p class="form-submit">%1$s %2$s</p>',