コメントフォームの「名前」、「Eメール」、および「Webサイト」のタイトルを変更したいですか。どうすればいいの?この分野でそれらを変更してもうまくいくと思いました( 'Website'、 'domainreference')が、それは何も変わらない。任意の助けがいただければ幸いです。
これが私のcomments.phpです。
<?php if ( have_comments() ) : ?>
<h4 id="comments"><?php comments_number('No Comments', 'One Comment', '% Comments' );?></h4>
<ol class="comment-list">
<?php wp_list_comments('callback=custom_comments');?>
</ol>
<?php endif; ?>
<?php
$comments_args = array(
'id_form' => 'commentform',
'class_form' => 'comment-form',
'id_submit' => 'submit',
'class_submit' => 'submit',
'name_submit' => 'submit',
'title_reply' => __( 'Post a comment' ),
'title_reply_to' => __( 'Leave a Reply to %s' ),
'cancel_reply_link' => __( 'Cancel Reply' ),
'label_submit' => __( 'Post Comment' ),
'format' => 'xhtml',
'comment_field' => '<p class="comment-form-comment"><label for="comment">' . _x( 'Join the Conversation', 'noun' ) .
'</label><textarea id="comment" placeholder="Comment" name="comment" cols="45" rows="8" aria-required="true">' .
'</textarea></p>',
'must_log_in' => '<p class="must-log-in">' .
sprintf(
__( 'You must be <a href="%s">logged in</a> to post a comment.' ),
wp_login_url( apply_filters( 'the_permalink', get_permalink() ) )
) . '</p>',
'logged_in_as' => '<p class="logged-in-as">' .
sprintf(
__( ' <a href="</a>. <a href="%3$s" title="Log out of this account"></a>' ),
admin_url( 'profile.php' ),
$user_identity,
wp_logout_url( apply_filters( 'the_permalink', get_permalink( ) ) )
) . '</p>',
'comment_notes_before' => '<p class="comment-notes">' .
__( '' ) . ( $req ? $required_text : '' ) .
'</p>',
'author' =>
'<p class="comment-form-author"><label for="author">' . __( 'Name', 'domainreference' ) . '</label> ' .
( $req ? '<span class="required">*</span>' : '' ) .
'<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) .
'" size="30"' . $aria_req . ' /></p>',
'email' =>
'<p class="comment-form-email"><label for="email">' . __( 'Email', 'domainreference' ) . '</label> ' .
( $req ? '<span class="required">*</span>' : '' ) .
'<input id="email" name="email" type="text" value="' . esc_attr( $commenter['comment_author_email'] ) .
'" size="30"' . $aria_req . ' /></p>',
'url' =>
'<p class="comment-form-url"><label for="url">' . __( 'Website', 'domainreference' ) . '</label>' .
'<input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) .
'" size="30" /></p>',
);
comment_form($comments_args);
?>
質問とは無関係なものもあります。コメントフォームが最初に表示され、その後に名前、電子メール、およびWebサイトフォームが続きます。名前、Eメール、ウェブサイトのフォームの後にコメントフォームが続くようにする方法はありますか?
このコードを使用すると、コメントフィールドのラベルをカスタマイズしたり、コメントフォームをフィールドの下に移動したりできます。あなたのfunctions.php
またはプラグインにコードを追加してください。
ラベルを変更するには、Name CUSTOMIZED
、Email CUSTOMIZED
、Website CUSTOMIZED
、およびComment * CUSTOMIZED
のテキストを変更します。
/**
* Customize comment form default fields.
* Move the comment_field below the author, email, and url fields.
*/
function wpse250243_comment_form_default_fields( $fields ) {
$commenter = wp_get_current_commenter();
$user = wp_get_current_user();
$user_identity = $user->exists() ? $user->display_name : '';
$req = get_option( 'require_name_email' );
$aria_req = ( $req ? " aria-required='true'" : '' );
$html_req = ( $req ? " required='required'" : '' );
$html5 = current_theme_supports( 'html5', 'comment-form' ) ? 'html5' : false;
$fields = [
'author' => '<p class="comment-form-author">' . '<label for="author">' . __( 'Name CUSTOMIZED', 'textdomain' ) . ( $req ? ' <span class="required">*</span>' : '' ) . '</label> ' .
'<input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30" maxlength="245"' . $aria_req . $html_req . ' /></p>',
'email' => '<p class="comment-form-email"><label for="email">' . __( 'Email CUSTOMIZED', 'textdomain' ) . ( $req ? ' <span class="required">*</span>' : '' ) . '</label> ' .
'<input id="email" name="email" ' . ( $html5 ? 'type="email"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_email'] ) . '" size="30" maxlength="100" aria-describedby="email-notes"' . $aria_req . $html_req . ' /></p>',
'url' => '<p class="comment-form-url"><label for="url">' . __( 'Website CUSTOMIZED', 'textdomain' ) . '</label> ' .
'<input id="url" name="url" ' . ( $html5 ? 'type="url"' : 'type="text"' ) . ' value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" maxlength="200" /></p>',
'comment_field' => '<p class="comment-form-comment"><label for="comment">' . _x( 'Comment * CUSTOMIZED', 'noun', 'textdomain' ) . '</label> <textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" aria-required="true" required="required"></textarea></p>',
];
return $fields;
}
add_filter( 'comment_form_default_fields', 'wpse250243_comment_form_default_fields' );
/**
* Remove the original comment field because we've added it to the default fields
* using wpse250243_comment_form_default_fields(). If we don't do this, the comment
* field will appear twice.
*/
function wpse250243_comment_form_defaults( $defaults ) {
if ( isset( $defaults[ 'comment_field' ] ) ) {
$defaults[ 'comment_field' ] = '';
}
return $defaults;
}
add_filter( 'comment_form_defaults', 'wpse250243_comment_form_defaults', 10, 1 );