修改Wordpress评论日期输出

时间:2014-05-29 00:58:39

标签: php wordpress comments

我正在使用默认的wordpress评论系统和我的评论

<?php wp_list_comments ?> 

要生成评论,我想知道如何修改评论日期?目前它显示2014年2月11日上午6:27的完整日期,我希望能够调整日期输出。在查看wordpress编解码器后,我似乎无法通过wp_list_comments args修改日期格式。

http://codex.wordpress.org/Function_Reference/wp_list_comments

3 个答案:

答案 0 :(得分:3)

您有两种选择: 1.您可以尝试修改wordpress核心文件wp-includes / comment-template.php。修改你想要的日期格式(这可能看起来更容易,但我不建议你修改核心文件) 2.您可以创建自定义回调函数来显示您的评论,如下所示: 你可以调用这个函数     

现在您可以在function.php文件中创建自定义函数my_custom_comment,它只会将您的自定义列表格式替换为默认列表。

现在在function.php中创建一个名为my_custom_comment的函数并修改日期格式

有关wp_list_comment的更多详细信息,请查看wp_list_comment()

function my_custom_comment($comment, $args, $depth) {
$GLOBALS['comment'] = $comment;
extract($args, EXTR_SKIP);

if ( 'div' == $args['style'] ) {
    $tag = 'div';
    $add_below = 'comment';
} else {
    $tag = 'li';
    $add_below = 'div-comment';
}
?>
<<?php echo $tag ?> <?php comment_class( empty( $args['has_children'] ) ? '' : 'parent' ) ?> id="comment-<?php comment_ID() ?>">
<?php if ( 'div' != $args['style'] ) : ?>
<div id="div-comment-<?php comment_ID() ?>" class="comment-body">
<?php endif; ?>
<div class="comment-author vcard">
<?php if ( $args['avatar_size'] != 0 ) echo get_avatar( $comment, $args['avatar_size'] ); ?>
<?php printf( __( '<cite class="fn">%s</cite> <span class="says">says:</span>' ), get_comment_author_link() ); ?>
</div>
<?php if ( $comment->comment_approved == '0' ) : ?>
    <em class="comment-awaiting-moderation"><?php _e( 'Your comment is awaiting moderation.' ); ?></em>
    <br />
<?php endif; ?>

<div class="comment-meta commentmetadata"><a href="<?php echo htmlspecialchars( get_comment_link( $comment->comment_ID ) ); ?>">
    <?php
        /* translators: 1: date, 2: time */
        printf( __('%1$s at %2$s'), get_comment_date(),  get_comment_time() ); ?></a><?php edit_comment_link( __( '(Edit)' ), '  ', '' );
    ?>
</div>

<?php comment_text(); ?>

<div class="reply">
<?php comment_reply_link( array_merge( $args, array( 'add_below' => $add_below, 'depth' => $depth, 'max_depth' => $args['max_depth'] ) ) ); ?>
</div>
<?php if ( 'div' != $args['style'] ) : ?>
</div>
<?php endif; ?>

答案 1 :(得分:0)

在评论功能中找到以下内容:

sprintf( __( '%1$s at %2$s', 'twentytwelve' ), get_comment_date(), get_comment_time() )

printf( __('%1$s at %2$s'), get_comment_date(),  get_comment_time())

然后删除%2 $ s和get_comment_time(),如下所示:

sprintf( __( '%1$s', 'twentytwelve' ), get_comment_date() )

printf( __('%1$s'), get_comment_date())

再次如果要修改日期,请使用以下参考: http://codex.wordpress.org/Formatting_Date_and_Time

用法: get_comment_date('D,F j')

我希望这是你喜欢的。

答案 2 :(得分:0)

使用WordPress编解码器文档,您添加一个回调函数作为wp_list_comments的参数。

<?php
    wp_list_comments( array(
        'style'       => 'ul',
        'callback'  =>  'custom_comment_template'
    ));
?>

wp-includes / class-walker-comment.php复制注释模板。并根据您的需要修改此部分。您可以在此处将DATE and TIME Formatting用于WordPress。

 function custom_comment_template(){
 // Codes you have copies from wp-includes/class-walker-comment.php
 // Or any design you want to use. You can use the hooks and filters
 // from wp-includes/comment-template.php like 
    get_comment_author_link, get_comment_author

 <div class="comment-meta commentmetadata">
  <a href="<?php echo esc_url( get_comment_link( $comment, $args ) ); ?>">
    <?php
     /* translators: 1: Comment date, 2: Comment time. */
     printf( __( '%1$s at %2$s' ), get_comment_date( '', $comment ), get_comment_time() );
            ?>
  </a>
  <?php edit_comment_link( __( '(Edit)' ), '&nbsp;&nbsp;', '' ); ?>
 </div>
 }