Search code examples
phpjoomlajoomla2.5joomla-extensions

Kunena for Joomla uses nofollow for internal links


For some reason Kunena puts nofollow links for everything internal. This makes sense for all external links but certainly not for internal ones. I want Google to index the paths associated with the forum posts I have.

I'm hoping someone knows how to remove the nofollow links. It looks like this file is the main one: components/com_kunena/lib/kunena.link.class.php

There are a few functions where I remove the nofollow links such as:

static function GetHrefLink($link, $name, $title = '', $rel = 'nofollow', $class = '', $anker = '', $attr = '') {
            return '<a ' . ($class ? 'class="' . $class . '" ' : '') . 'href="' . $link . ($anker ? ('#' . $anker) : '') . '" title="' . $title . '"' . ($rel ? ' rel="' . $rel . '"' : '') . ($attr ? ' ' . $attr : '') . '>' . $name . '</a>';
    }

    //
    // Basic universal href link
    //
    static function GetSefHrefLink($link, $name, $title = '', $rel = 'nofollow', $class = '', $anker = '', $attr = '') {
            $uri = $link instanceof JURI ? $link : JURI::getInstance($link);
            if ($anker) $uri->setFragment($anker);
            return JHTML::_('kunenaforum.link', $uri, $name, $title, $class, $rel, $attr);
    }

I've tried removing the parameter everywhere, I tried just leaving it empty and I've tried using follow as a replacement. I've also tried looking for every single place where nofollow is shown in the whole Kunena component and tried removing those. Still no luck. Anyone with any ideas?

Kunena: 2.0.2 Joomla: 2.5.7


Solution

  • Resolved this by changing this file: administrator/components/com_kunena/libraries/view.php

    Find:

    public function getTopicLink

    Change this line:

    return JHTML::_('kunenaforum.link', $uri, $content, $title, $class, 'nofollow'); 
    

    to:

    return JHTML::_('kunenaforum.link', $uri, $content, $title, $class, 'follow'); 
    

    This exists in several spots.