WordPress как на ладони
Хостинг, VPS/VDS и отдельные сервера только на SSD дисках. 7 дней бесплатного тестирования.

get_comment_author_link хук-фильтр . WP 1.5.0

Позволяет изменить ссылку на сайт комментатора, возвращаемую функцией get_comment_author_link().

Использование

add_filter( 'get_comment_author_link', 'filter_function_name_6292', 10, 3 );
function filter_function_name_6292( $return, $author, $comment_ID ){
	// Изменяем при надобности...

	return $return;
}
$return(строка)
Ссылка на сайт комментатора в html формате (<a></a>), если она была указана и корректна. Иначе - имя автора комментария.
$author(строка)
Имя автора комментария, получаемое функцией get_comment_author().
$comment_ID(число)
ID комментария.

Примеры

#1 Изменяет ссылку, чтобы она открывалась в новой вкладке.

Добавим к ссылке атрибут target='_blank':

add_filter( 'get_comment_author_link', 'add_target_blank_comment_author_link' );
function add_target_blank_comment_author_link( $return ) {
	$search  = 'external nofollow\'';
	$replace = 'external nofollow noreferrer\' target=\'_blank\'';

	return str_replace( $search, $replace, $return );
}

Заметки

  • C версии 4.1.0 Добавлены параметры $author и $comment_ID.

Где используется хук

Код хука-фильтра get_comment_author_link

Фрагмент из: wp-includes/comment-template.php VER 4.9.8
...
		$return = $author;
	else
		$return = "<a href='$url' rel='external nofollow' class='url'>$author</a>";

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

/**
 * Display the html link to the url of the author of the current comment.
 *
 * @since 0.71
 * @since 4.4.0 Added the ability for `$comment_ID` to also accept a WP_Comment object.
 *
 * @param int|WP_Comment $comment_ID Optional. WP_Comment or the ID of the comment for which to print the author's link.
 *									 Default current comment.
 */
function comment_author_link( $comment_ID = 0 ) {
	echo get_comment_author_link( $comment_ID );
}

...
campusboy 3060youtube.com/c/wpplus
Создатель YouTube канала wp-plus, на котором делюсь своим опытом. Активный пользователь wp-kama.ru. WordPress-разработчик. Разработка сайтов и лендингов. Доработка существующих проектов. Сопровождение ресурсов.
Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться