get_comment_author_link( int|WP_Comment $comment_id ): string

Retrieves the HTML link to the URL of the author of the current comment.


Description

Both get_comment_author_url() and get_comment_author() rely on get_comment() , which falls back to the global comment variable if the $comment_id argument is empty.


Top ↑

Parameters

$comment_id int|WP_Comment Optional
WP_Comment or the ID of the comment for which to get the author's link.
Default current comment.

Top ↑

Return

string The comment author name or HTML link for author's URL.


Top ↑

More Information

Displays the comment author name or HTML link of the comment author’s URL, given a comment ID.

echo get_comment_author_link( $comment_ID );


Top ↑

Source

File: wp-includes/comment-template.php. View all references

function get_comment_author_link( $comment_id = 0 ) {
	$comment = get_comment( $comment_id );

	$comment_id = ! empty( $comment->comment_ID ) ? $comment->comment_ID : (string) $comment_id;

	$comment_author_url = get_comment_author_url( $comment );
	$comment_author     = get_comment_author( $comment );

	if ( empty( $comment_author_url ) || 'http://' === $comment_author_url ) {
		$comment_author_link = $comment_author;
	} else {
		$rel_parts = array( 'ugc' );
		if ( ! wp_is_internal_link( $comment_author_url ) ) {
			$rel_parts = array_merge(
				$rel_parts,
				array( 'external', 'nofollow' )
			);
		}

		/**
		 * Filters the rel attributes of the comment author's link.
		 *
		 * @since 6.2.0
		 *
		 * @param string[]   $rel_parts An array of strings representing the rel tags
		 *                              which will be joined into the anchor's rel attribute.
		 * @param WP_Comment $comment   The comment object.
		 */
		$rel_parts = apply_filters( 'comment_author_link_rel', $rel_parts, $comment );

		$rel = implode( ' ', $rel_parts );
		$rel = esc_attr( $rel );
		// Empty space before 'rel' is necessary for later sprintf().
		$rel = ! empty( $rel ) ? sprintf( ' rel="%s"', $rel ) : '';

		$comment_author_link = sprintf(
			'<a href="%1$s" class="url"%2$s>%3$s</a>',
			$comment_author_url,
			$rel,
			$comment_author
		);
	}

	/**
	 * Filters the comment author's link for display.
	 *
	 * @since 1.5.0
	 * @since 4.1.0 The `$comment_author` and `$comment_id` parameters were added.
	 *
	 * @param string $comment_author_link The HTML-formatted comment author link.
	 *                                    Empty for an invalid URL.
	 * @param string $comment_author      The comment author's username.
	 * @param string $comment_id          The comment ID as a numeric string.
	 */
	return apply_filters( 'get_comment_author_link', $comment_author_link, $comment_author, $comment_id );
}

Top ↑

Hooks



Top ↑

Changelog

Changelog
Version Description
4.4.0 Added the ability for $comment_id to also accept a WP_Comment object.
1.5.0 Introduced.

Top ↑

User Contributed Notes

  1. Skip to note 1 content
    Contributed by Muhammad Ayoub

    Add an custom class to comment_author_link using filters. When using get_comment_author_link this function to fetch comment author link.

    Just add this code into functions.php

    // filter for get_comment_author_link
    function wpdocs_custom_get_comment_author_link( $content ) {
    	$extra_classes = 'text-decoration-none text-primary fw-bold mb-0';
    	return preg_replace( '/url/', 'url ' . $extra_classes, $content );
    }
    
    add_filter( 'get_comment_author_link', 'wpdocs_custom_get_comment_author_link', 99 );

You must log in before being able to contribute a note or feedback.