WordPress/wp-content/themes/twentynineteen/classes/class-twentynineteen-walker-comment.php

127 lines
4.1 KiB
PHP
Raw Normal View History

<?php
/**
* Custom comment walker for this theme
*
* @package WordPress
* @subpackage Twenty_Nineteen
* @since 1.0.0
*/
/**
* This class outputs custom comment walker for HTML5 friendly WordPress comment and threaded replies.
*
* @since 1.0.0
*/
class TwentyNineteen_Walker_Comment extends Walker_Comment {
/**
* Outputs a comment in the HTML5 format.
*
* @see wp_list_comments()
*
* @param WP_Comment $comment Comment to display.
* @param int $depth Depth of the current comment.
* @param array $args An array of arguments.
*/
protected function html5_comment( $comment, $depth, $args ) {
$tag = ( 'div' === $args['style'] ) ? 'div' : 'li';
?>
<<?php echo $tag; ?> id="comment-<?php comment_ID(); ?>" <?php comment_class( $this->has_children ? 'parent' : '', $comment ); ?>>
<article id="div-comment-<?php comment_ID(); ?>" class="comment-body">
<footer class="comment-meta">
<div class="comment-author vcard">
<?php
Twenty Nineteen: Fixes and improvements. This commit brings over several changes that occurred upstream in the theme’s GitHub repository into core. - Fix the gallery caption link color. https://github.com/WordPress/twentynineteen/pull/687 - Remove left padding from pullquote blocks. https://github.com/WordPress/twentynineteen/pull/690 - Print `skip-link-focus-fix` inline instead of enqueueing as blocking script. https://github .com/WordPress/twentynineteen/pull/47 - Fix and improve some strings with placeholders. https://github.com/WordPress/twentynineteen/pull/217 - Fixes some minor code quality issues. https://github.com/WordPress/twentynineteen/pull/237 - Fix PHP Warning: Parameter must be an array or an object that implements Countable. https://github .com/WordPress/twentynineteen/pull/661 - Add missing text domain and escaping to comment author text. https://github.com/WordPress/twentynineteen/pull/274 - Remove hyphens rule for cover image text. https://github.com/WordPress/twentynineteen/pull/691 - Fix left/right-aligned pullquote spacing. https://github.com/WordPress/twentynineteen/pull/695 - Improve `readme.txt` to follow the correct standards for themes. https://github.com/WordPress/twentynineteen/issues/689 Props kjellr, allancole, dimadin, westonruter, khleomix, grapplerulrich, iCaleb, desrosj. Merges [44196], [44199], and [44201-44202] into trunk. Fixes #45424. Built from https://develop.svn.wordpress.org/trunk@44305 git-svn-id: http://core.svn.wordpress.org/trunk@44135 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-12-19 04:24:11 +01:00
$comment_author_link = get_comment_author_link( $comment );
$comment_author_url = get_comment_author_url( $comment );
$comment_author = get_comment_author( $comment );
$avatar = get_avatar( $comment, $args['avatar_size'] );
if ( 0 != $args['avatar_size'] ) {
if ( empty( $comment_author_url ) ) {
echo $avatar;
} else {
printf( '<a href="%s" rel="external nofollow" class="url">', $comment_author_url );
echo $avatar;
}
}
Twenty Nineteen: Fixes and improvements. This commit brings over several changes that occurred upstream in the theme’s GitHub repository into core. - Fix the gallery caption link color. https://github.com/WordPress/twentynineteen/pull/687 - Remove left padding from pullquote blocks. https://github.com/WordPress/twentynineteen/pull/690 - Print `skip-link-focus-fix` inline instead of enqueueing as blocking script. https://github .com/WordPress/twentynineteen/pull/47 - Fix and improve some strings with placeholders. https://github.com/WordPress/twentynineteen/pull/217 - Fixes some minor code quality issues. https://github.com/WordPress/twentynineteen/pull/237 - Fix PHP Warning: Parameter must be an array or an object that implements Countable. https://github .com/WordPress/twentynineteen/pull/661 - Add missing text domain and escaping to comment author text. https://github.com/WordPress/twentynineteen/pull/274 - Remove hyphens rule for cover image text. https://github.com/WordPress/twentynineteen/pull/691 - Fix left/right-aligned pullquote spacing. https://github.com/WordPress/twentynineteen/pull/695 - Improve `readme.txt` to follow the correct standards for themes. https://github.com/WordPress/twentynineteen/issues/689 Props kjellr, allancole, dimadin, westonruter, khleomix, grapplerulrich, iCaleb, desrosj. Merges [44196], [44199], and [44201-44202] into trunk. Fixes #45424. Built from https://develop.svn.wordpress.org/trunk@44305 git-svn-id: http://core.svn.wordpress.org/trunk@44135 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-12-19 04:24:11 +01:00
/*
* Using the `check` icon instead of `check_circle`, since we can't add a
* fill color to the inner check shape when in circle form.
*/
if ( twentynineteen_is_comment_by_post_author( $comment ) ) {
printf( '<span class="post-author-badge" aria-hidden="true">%s</span>', twentynineteen_get_icon_svg( 'check', 24 ) );
}
Twenty Nineteen: Fixes and improvements. This commit brings over several changes that occurred upstream in the theme’s GitHub repository into core. - Fix the gallery caption link color. https://github.com/WordPress/twentynineteen/pull/687 - Remove left padding from pullquote blocks. https://github.com/WordPress/twentynineteen/pull/690 - Print `skip-link-focus-fix` inline instead of enqueueing as blocking script. https://github .com/WordPress/twentynineteen/pull/47 - Fix and improve some strings with placeholders. https://github.com/WordPress/twentynineteen/pull/217 - Fixes some minor code quality issues. https://github.com/WordPress/twentynineteen/pull/237 - Fix PHP Warning: Parameter must be an array or an object that implements Countable. https://github .com/WordPress/twentynineteen/pull/661 - Add missing text domain and escaping to comment author text. https://github.com/WordPress/twentynineteen/pull/274 - Remove hyphens rule for cover image text. https://github.com/WordPress/twentynineteen/pull/691 - Fix left/right-aligned pullquote spacing. https://github.com/WordPress/twentynineteen/pull/695 - Improve `readme.txt` to follow the correct standards for themes. https://github.com/WordPress/twentynineteen/issues/689 Props kjellr, allancole, dimadin, westonruter, khleomix, grapplerulrich, iCaleb, desrosj. Merges [44196], [44199], and [44201-44202] into trunk. Fixes #45424. Built from https://develop.svn.wordpress.org/trunk@44305 git-svn-id: http://core.svn.wordpress.org/trunk@44135 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-12-19 04:24:11 +01:00
/*
* Using the `check` icon instead of `check_circle`, since we can't add a
* fill color to the inner check shape when in circle form.
*/
if ( twentynineteen_is_comment_by_post_author( $comment ) ) {
printf( '<span class="post-author-badge" aria-hidden="true">%s</span>', twentynineteen_get_icon_svg( 'check', 24 ) );
}
Twenty Nineteen: Fixes and improvements. This commit brings over several changes that occurred upstream in the theme’s GitHub repository into core. - Fix the gallery caption link color. https://github.com/WordPress/twentynineteen/pull/687 - Remove left padding from pullquote blocks. https://github.com/WordPress/twentynineteen/pull/690 - Print `skip-link-focus-fix` inline instead of enqueueing as blocking script. https://github .com/WordPress/twentynineteen/pull/47 - Fix and improve some strings with placeholders. https://github.com/WordPress/twentynineteen/pull/217 - Fixes some minor code quality issues. https://github.com/WordPress/twentynineteen/pull/237 - Fix PHP Warning: Parameter must be an array or an object that implements Countable. https://github .com/WordPress/twentynineteen/pull/661 - Add missing text domain and escaping to comment author text. https://github.com/WordPress/twentynineteen/pull/274 - Remove hyphens rule for cover image text. https://github.com/WordPress/twentynineteen/pull/691 - Fix left/right-aligned pullquote spacing. https://github.com/WordPress/twentynineteen/pull/695 - Improve `readme.txt` to follow the correct standards for themes. https://github.com/WordPress/twentynineteen/issues/689 Props kjellr, allancole, dimadin, westonruter, khleomix, grapplerulrich, iCaleb, desrosj. Merges [44196], [44199], and [44201-44202] into trunk. Fixes #45424. Built from https://develop.svn.wordpress.org/trunk@44305 git-svn-id: http://core.svn.wordpress.org/trunk@44135 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-12-19 04:24:11 +01:00
printf(
/* translators: %s: comment author link */
wp_kses(
__( '%s <span class="screen-reader-text says">says:</span>', 'twentynineteen' ),
Twenty Nineteen: Fixes and improvements. This commit brings over several changes that occurred upstream in the theme’s GitHub repository into core. - Fix the gallery caption link color. https://github.com/WordPress/twentynineteen/pull/687 - Remove left padding from pullquote blocks. https://github.com/WordPress/twentynineteen/pull/690 - Print `skip-link-focus-fix` inline instead of enqueueing as blocking script. https://github .com/WordPress/twentynineteen/pull/47 - Fix and improve some strings with placeholders. https://github.com/WordPress/twentynineteen/pull/217 - Fixes some minor code quality issues. https://github.com/WordPress/twentynineteen/pull/237 - Fix PHP Warning: Parameter must be an array or an object that implements Countable. https://github .com/WordPress/twentynineteen/pull/661 - Add missing text domain and escaping to comment author text. https://github.com/WordPress/twentynineteen/pull/274 - Remove hyphens rule for cover image text. https://github.com/WordPress/twentynineteen/pull/691 - Fix left/right-aligned pullquote spacing. https://github.com/WordPress/twentynineteen/pull/695 - Improve `readme.txt` to follow the correct standards for themes. https://github.com/WordPress/twentynineteen/issues/689 Props kjellr, allancole, dimadin, westonruter, khleomix, grapplerulrich, iCaleb, desrosj. Merges [44196], [44199], and [44201-44202] into trunk. Fixes #45424. Built from https://develop.svn.wordpress.org/trunk@44305 git-svn-id: http://core.svn.wordpress.org/trunk@44135 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-12-19 04:24:11 +01:00
array(
'span' => array(
'class' => array(),
),
)
),
'<b class="fn">' . get_comment_author_link( $comment ) . '</b>'
);
if ( ! empty( $comment_author_url ) ) {
echo '</a>';
}
?>
</div><!-- .comment-author -->
<div class="comment-metadata">
<a href="<?php echo esc_url( get_comment_link( $comment, $args ) ); ?>">
<?php
/* translators: 1: comment date, 2: comment time */
$comment_timestamp = sprintf( __( '%1$s at %2$s', 'twentynineteen' ), get_comment_date( '', $comment ), get_comment_time() );
?>
<time datetime="<?php comment_time( 'c' ); ?>" title="<?php echo $comment_timestamp; ?>">
<?php echo $comment_timestamp; ?>
</time>
</a>
<?php
$edit_comment_icon = twentynineteen_get_icon_svg( 'edit', 16 );
edit_comment_link( __( 'Edit', 'twentynineteen' ), '<span class="edit-link-sep">&mdash;</span> <span class="edit-link">' . $edit_comment_icon, '</span>' );
?>
</div><!-- .comment-metadata -->
<?php if ( '0' == $comment->comment_approved ) : ?>
<p class="comment-awaiting-moderation"><?php _e( 'Your comment is awaiting moderation.', 'twentynineteen' ); ?></p>
<?php endif; ?>
</footer><!-- .comment-meta -->
<div class="comment-content">
<?php comment_text(); ?>
</div><!-- .comment-content -->
</article><!-- .comment-body -->
<?php
comment_reply_link(
array_merge(
$args,
array(
'add_below' => 'div-comment',
'depth' => $depth,
'max_depth' => $args['max_depth'],
'before' => '<div class="comment-reply">',
'after' => '</div>',
)
)
);
?>
<?php
}
}