Как убрать линки из ников в комментариях | Wordpress

Первыми блог нашли естественно спамеры. В комментариях к одному из моих постов появлись комментарии нейтрального характера – типа вот молодец хорошо пишешь. :) Обрадовался я – похвалили, одобрил коммент. А сегодня ещё два таких же по стилю и с мылом из тогоже домена. Пригляделся а ссылка с ника комментатора ведет на некий сайт прямой ссылкой. По сути то за что в sape деньги платят – вордпресс позволяет делать бесплатно – робот постит комментарии под разными пользователями с указанием разных сайтов. Админ ресурса его одобряет – а сеошник, владелец робота, получает прямой линк на нужный ему сайт с вашего. Надо это дело поправить…

Собственно решение нашёл в сети правда на оригниал линк уже битый (дальше не копал) – открыл сохраненную копию. Собственно решение простое:

Идем в шаблон комментария – wp-includes/comment-template.php

Ищем функцию

/**
 * Retrieve the html link to the url of the author of the current comment.
 *
 * @since 1.5.0
 * @uses apply_filters() Calls 'get_comment_author_link' hook on the complete link HTML 
 * or author
 * @param int $comment_ID The ID of the comment for which to get the author's link.  Optional.
 * @return string Comment Author name or HTML link for author's URL
 */
function get_comment_author_link( $comment_ID = 0 ) {
/** @todo Only call these functions when they are needed. Include in if... else blocks */
	$url    = get_comment_author_url( $comment_ID );
	$author = get_comment_author( $comment_ID );

	if ( empty( $url ) || 'http://' == $url )
		$return = $author;
	else
		$return = "<a href='$url' rel='external nofollow' class='url'>$author</a>";
	return apply_filters('get_comment_author_link', $return);
}

В ней меняем строку:

$return = "<a href='$url' rel='external nofollow' class='url'>$author</a>";

на:

$return = "<noindex><a href='$url' rel='external nofollow'>$author</a></noindex>";

Ну или просто убираем линк из конструкции.

Получим в комментариях просто имена комментаторов без прямого линка.

  1. удалил линк, всё равно ссылка есть, где же её удалить то

  2. Игорь:

    wp-includes/comment-template.php
    ищем:
    $return = «$author«;
    меняем на:
    $return = «$author»;

    так норм ) ссылка убирается
    удалять ненужно