Create comments.php form of custom HTML code

admin2025-06-05  2

One example of the comments.php is available here.

I have created comments.php file in my theme folder. In my content.php my HTML for displaying comment form looks like this:

<textarea name="name" rows="8" cols="80"></textarea>
    <div class="t-comment-section">
        <p>Full Name:</p>  <input type="text" name="Full Name">
        <p>Email:</p>  <input type="text" name="Email address">
        <p>Website:</p>  <input type="text" name="Website url">
        <a href=""><i class="fa fa-comment" aria-hidden="true"></i><span> Submit Comment </span></a>
    </div>

How should I connect my comments.php to the HTML that will be used to display the comment form in my single.php or in short all the post pages that will appear?

One example of the comments.php is available here.

I have created comments.php file in my theme folder. In my content.php my HTML for displaying comment form looks like this:

<textarea name="name" rows="8" cols="80"></textarea>
    <div class="t-comment-section">
        <p>Full Name:</p>  <input type="text" name="Full Name">
        <p>Email:</p>  <input type="text" name="Email address">
        <p>Website:</p>  <input type="text" name="Website url">
        <a href=""><i class="fa fa-comment" aria-hidden="true"></i><span> Submit Comment </span></a>
    </div>

How should I connect my comments.php to the HTML that will be used to display the comment form in my single.php or in short all the post pages that will appear?

Share Improve this question edited Sep 9, 2017 at 11:29 Johansson 15.4k11 gold badges44 silver badges80 bronze badges asked Sep 9, 2017 at 11:00 WordCentWordCent 1,9646 gold badges34 silver badges60 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 1

The comment_form() function is pretty customizable, and it accepts a variety of arguments. Take a look at these sample arguments, you can modify them to fit your needs:

$fields =  array(
    'author' =>
        '<input name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) .'" size="30" placeholder="'.__('Your name','text-domain').( $req ? ' (Required)' : '' ).'"/>',
    'email' =>
        '<input name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) .'" size="30" placeholder="'.__('Your email','text-domain').( $req ? ' (Required)' : '' ).'"/>',
);
$args = array(
    'id_form'           => 'commentform',
    'class_form'        => 'comment-form',
    'id_submit'         => 'submit',
    'class_submit'      => 'submit',
    'name_submit'       => 'submit',
    'submit_button'     => '<input name="%1$s" type="submit" id="%2$s" class="%3$s" value="%4$s" />',
    'title_reply'       => '',
    'title_reply_to'    => __( 'Reply to %s','text-domain' ),
    'cancel_reply_link' => __( 'Cancel comment','text-domain' ),
    'label_submit'      => __( 'Post comment','text-domain' ),
    'format'            => 'xhtml',
    'comment_field'     =>  '<textarea id="comment" name="comment" placeholder="'.__('Comment text','text-domain').'" cols="45" rows="8" aria-required="true">' .'</textarea>',
    'logged_in_as'      => '<p class="logged-in-as">' .
                          sprintf(
                              __( 'Logged in as %1$s. <a href="%2$s" title="%3$s">%4$s</a>', 'text-domain'),
                              $user_identity,
                              wp_logout_url( apply_filters( 'the_permalink', get_permalink( ) ) ),
                              __('Log out?','text-domain'),
                              __('Click to log out.','text-domain')
                          ) . '</p>',
    'comment_notes_before' => '<p class="comment-notes">' . __( 'Your email address will not be published.','text-domain' ) .'</p>',
    'fields'            => apply_filters( 'comment_form_default_fields', $fields ),
);

comment_form( $args );

You can add any class to the elements, or wrap them in <div> or <p>.

If you want to move the text area below the other fields, you can use the comment_form_fields filter:

function move_comment_field_to_bottom( $fields ) {
    $comment_field = $fields['comment'];
    unset( $fields['comment'] );
    $fields['comment'] = $comment_field;
    return $fields;
}

add_filter( 'comment_form_fields', 'move_comment_field_to_bottom' );

UPDATE

To include the comment form in your content.php file, save the first code in your comment.php, and then call the form in the loop this way:

if ( comments_open() || '0' != get_comments_number() ) {
    comments_template();
}

This will append the comment.php to your content.

转载请注明原文地址:http://conceptsofalgorithm.com/Algorithm/1749089291a316272.html

最新回复(0)