WordPress中的自定义评论表单

时间:2013-01-30 16:51:08

标签: css wordpress comments

我想在WordPress中自定义comment_form()函数的输出。 要编辑字段和textarea,我使用了以下代码,一切正常。

<?php
    $req = get_option( 'require_name_email' );
    $fields =  array(
            // redefine author field
        'author' => '<p class="comment-form-author">' . '<label for="author">' . __( 'Name:' ) . ( $req ? ' <span class="required">*</span>' : '' ) . '</label>' .
        '<div class="input-prepend"><span class="add-on"><i class="icon-user"></i></span><input id="author" name="author" type="text" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . 'aria-required="true"' . ' required /></p>',
        'email'  => '<p class="comment-form-email"><label for="email">' . __( 'Email Address:' ) . ( $req ? ' <span class="required">*</span><br/>' : '' ) . '</label>' . 
        '<div class="input-prepend"><span class="add-on"><i class="icon-envelope"></i></span><input required id="email" name="email" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) . '" size="30"' . 'aria-required="true"' . ' required /></div></p>',
        'url'  => '<p class="comment-form-url"><label for="url">' . __( 'Your Website:' ) . '</label>' . 
        '<div class="input-prepend"><span class="add-on"><i class="icon-globe"></i></span><input id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /></div></p>'
        );
    $comments_args = array(
        'fields' => $fields,
            // redefine your own textarea (the comment body)
        'comment_field' => '<p class="comment-form-comment"><label for="comment">' . 'Comment' . '</label><textarea id="comment" name="comment" class="span12" rows="5" aria-required="true"></textarea></p>',
        );
    comment_form( $comments_args );
?>

结果如下:

Custom comment form

现在,我想为提交按钮添加两个CSS类(class="btn btn-primary");如果不使用jQuery,我怎么能这样做?

注意:

对于解决方案,请阅读有关以绿色标志标记的答案的评论。

1 个答案:

答案 0 :(得分:1)

正如krizna所说,您可以修改主题的comments.php文件以更改comment_form()的输出。我认为在这种情况下,这可能是你最好的选择。

如果您查看Codex中comment_form()的{​​{1}},您会注意到您只能修改提交按钮的ID,而不能修改课程的ID。 Trac上有一些关于此的门票:

如果在这种情况下修改comments.php不适合您,您可以尝试应用其中一个补丁。