更改注释的HTML输出

时间:2012-05-29 作者:versvs

我想定制评论表单的HTML输出。我一直在读

我一直在读how to alter some variables of the comment_form(). 前面的链接为使用该功能提供了一个很好的指南。

但我仍然无法更改表单的HTML输出。我想把一些字段包装在一个容器中。

对于旧版本的wordpress,可以在评论中随意更改。php函数,但这样做会破坏嵌套的注释,因此它不是一个选项。

是否可以更改此html输出?

谢谢

根据请求,再添加一点信息:)comment\\u form()的默认html输出为:

<p class="comment-form-author"><label for="author">Name</label> <span class="required">*</span><input id="author" name="author" type="text" value="" size="30" aria-required=\'true\' /></p>
<p class="comment-form-email"><label for="email">Email</label> <span class="required">*</span><input id="email" name="email" type="text" value="" size="30" aria-required=\'true\' /></p>
<p class="comment-form-url"><label for="url">Website</label><input id="url" name="url" type="text" value="" size="30" /></p>
我想将所有三段都封装在一个html元素(即DIV)中。

1 个回复
最合适的回答,由SO网友:Chip Bennett 整理而成

根据请求,再添加一点信息:)comment\\u form()的默认html输出为:

<p class="comment-form-author"><label for="author">Name</label> <span class="required">*</span><input id="author" name="author" type="text" value="" size="30" aria-required=\'true\' /></p>
<p class="comment-form-email"><label for="email">Email</label> <span class="required">*</span><input id="email" name="email" type="text" value="" size="30" aria-required=\'true\' /></p>
 <p class="comment-form-url"><label for="url">Website</label><input id="url" name="url" type="text" value="" size="30" /></p> I would like to wrap all three paragraphs inside an html element (ie. DIV).
事实上,这很容易!您只需要知道要使用的正确挂钩。

这个comment_form() 功能包括,其中several other action hooks, 两个将完美满足您的需求:comment_form_before_fieldscomment_form_after_fields. 您可以使用这些挂钩添加包装器<div>:

<?php
function wpse53671_comment_form_before_fields() {
    echo \'<div>\';
}
add_action( \'comment_form_before_fields\', \'wpse53671_comment_form_before_fields\' );

function wpse53671_comment_form_after_fields() {
    echo \'</div>\';
}
add_action( \'comment_form_after_fields\', \'wpse53671_comment_form_after_fields\' );
?>
(注意:如果其他任何操作与这些操作挂钩,您可能需要调整回调优先级,以便标记正确嵌套。

结束

相关推荐

是否在GET_COMMENTS中显示COMMENT_DATE?

是否有任何方法可以更改日期的显示方式以及get\\u注释。。?我有以下几点。。 <?php $comments = get_comments( array( \'post_id\' => $post->ID, \'number\' => 4, \'status\' => \'approve\' ) ); foreach($comment