Поддержка Проблемы и решения Ссылка на профиль автора комментария

  • Здравствуйте Уважаемые форумчане! Помогите решить маленькую проблему!
    У меня профиль пользователя создан с помощью плагина WP-users и ссылка на профиль пользователя выглядит так —
    <a href="http://buraevopress.ru/?page_id=1029&uid=<?php the_author_ID(); ?>"><?php the_author(); ?></a>

    Вроде бы все понятно и все работает!
    Идем дальше!
    Вывод комментов у меня осуществляется плагином WP-resentcomments
    Как выглядит можно посмотреть на сайте buraevopress.ru
    в правом сайдбаре на главной страничке например.
    И там же видно что имя автора комментария ведет на его сайт котрый он указал в профиле, а мне нужно чтобы ссылка вела на его профиль!
    В принципе вставить можно ссылку в плагин WP-resentcomments который будет вести на профиль но там другая скажем «грамматика» написания кода

    Вот код который выводит блок комментарий-имя автора-назв.статьи

    $result .= '<li id="rc_item_' . ++$count . '" class="rc_item">' . $element_avatar . sprintf('<div class="rc_info"><div class="rc_excerpt">' . $comment_excerpt . '</div><span class="author_name">%1$s</span> ' . __('к статье', 'wp-recentcomments') . ' <span class="post_title">%2$s</span></div>', get_comment_author_link(), '<a rel="nofollow" href="'. get_permalink($comment->comment_post_ID) . '#comment-' . $comment->comment_ID . '">' . get_the_title($comment->comment_post_ID) . '</a>') . '</li>';

    мне нужно заменить тут
    <span class="author_name">%1$s</span>

    на
    <a href="http://buraevopress.ru/?page_id=1029&uid=<?php the_author_ID(); ?>"><?php the_author(); ?></a>

    Но как я пока не понял! Помогите пожалуйста!

Просмотр 14 ответов — с 1 по 14 (всего 14)
  • Нашел в плагине строчку
    $result .= '<div class="author_name">' . get_comment_author_link() . '</div>';
    тут видно что ссылка ведет на get_comment_author_link() а мне нужно на
    <a href="http://buraevopress.ru/?page_id=1029&uid=<?php the_author_ID(); ?>"><?php the_author(); ?></a>
    Как его приспособить?

    Могу подсуетить денежно…профи решит проблему за пять минут! Я прост в этих запятых и точках путаюсь…

    Написать автору плагина не пробовали?

    pchela Зачем! Эт ж моя доработка!

    Помогите хотя бы советом..в том направлении я вообще капаю!?

    Такой способ: заменить get_comment_author_link() в первом примере своей функцией get_comment_author_profile_link()
    Функцию прописать или в functions.php или в плагине. Не тестил, но примерно в этом направлении.

    function get_comment_author_profile_link( $comment_ID = 0 ) {
        $comment = get_comment( $comment_ID );
        $userid = get_userdata($comment->user_id);
        $author = get_comment_author( $comment_ID );
        if ( empty($user) )
        $return = $author;
        else
        $return = "<a href='http://buraevopress.ru/?page_id=1029&uid=" . $userid . "' rel='nofollow' class='url'>$author</a>";
        return $return;
    }

    имхо: удобнее свой виджет для комментариев, чтобы не зависеть от обновлений плагина.

    так лучше, а то был франкенштейн-недоделка.

    function get_comment_author_profile_link() {
        $comment = get_comment( $comment_ID );
        $author = get_comment_author( $comment_ID );
        if ($comment->user_id) {
    	$return = "<a href='http://buraevopress.ru/?page_id=1029&uid=" . $comment->user_id . "' rel='author'>" . $author . "</a>";
        } else {
    	$return = $author;
        }
        return apply_filters('get_comment_author_profile_link', $return);
    }
    add_filter('get_comment_author_link', 'get_comment_author_profile_link');

    Просто поместить в functions.php и готово )

    vjpo Вставил данный код! Сперва первый…не работает…затем второй..имена стали не активными…зайдите на САЙТ и сразу увидите

    первый не обсуждаем, он нерабочий.
    второй у меня работает со стандартным виджетом. Дайте тогда ссылку на плагин.

    Если речь об этом WP-RecentComments, то приведенный код с get_comment_author_link там отсутствует. То есть совсем не присутствует.

    Да речь об WP-RecentComments…стандартный вывод комментариев мне не очень понравился…нельзя смотреть старые комментарии! а тут навигация есть..авы выводятся загруженные пользователями…я плагин не обновляю…у меня вместо новой версии 2.0.6 вроде стоит 1.8.3

    function get_comment_author_profile_link() {
        $comment = get_comment( $comment_ID );
        $url = $comment->comment_author_url;
        $author = $comment->comment_author;
        $comm_email = $comment->comment_author_email;
        $comm_user = get_user_by('email', $comm_email);
        $comm_user_id = $comm_user->ID;
        if ( $comm_user_id ) {
    	$return = "<a href='http://a_sultanoff.ru/?page_id=1029&uid=" . $comm_user_id . "' rel='author'>" . $author . "</a>";
        } elseif ( empty( $url ) || 'http://' == $url ) {
            $return = $author;
        } else {
            $return = "<a href='$url' rel='external nofollow' class='url'>$author</a>";
        }
        return apply_filters('get_comment_author_profile_link', $return);
    }
    add_filter('get_comment_author_link', 'get_comment_author_profile_link');

    Круто! Работает! Спасибо vjpo ! Уважаю таких людей! А почему свой проект не запустишь? Вроде в этом очень хорошо разбираешься!

    Всё, иду запускать. Привет!

Просмотр 14 ответов — с 1 по 14 (всего 14)
  • Тема «Ссылка на профиль автора комментария» закрыта для новых ответов.