0

我有一个公共菜单项,即类别列表,因此它显示某个类别的文章列表。该类别是公开的,但有些文章仅供注册用户使用。当注册用户访问该文章时,他最终会访问与此类似的地址:http://www.example.com/menu-item-title/19-article-alias.

问题是当注册用户复制文章的链接并将其提供给未注册的人时,因为未注册的人可以访问内容。当链接http://www.example.com/19-article-alias正常时,会出现“未经授权的访问”消息,但更改链接格式不是可接受的解决方案,因为有人可以弄清楚,http://www.example.com/menu-item-title/19-article-alias无需登录即可访问此类链接。

PS。我正在运行 Joomla 1.6

4

1 回答 1

0

我觉得我必须有点模糊,因为我面前没有 Joomla 1.6,而且几乎所有 joomla 都过于复杂。基本上,您需要确定在触发链接时触发哪个控制器http://www.example.com/menu-item-title/19-article-alias,并在控制器打印if($user->get('id')).

在 1.5 中,有这样的:

    if ($user->get('id') ||
        ($view == 'category' && JRequest::getVar('layout') != 'blog' && $viewcache == 0) ||
         $view == 'archive' && $viewcache == 0) {
        parent::display(false);
    } else {
        parent::display(true);
    }

在您的情况下,您可能需要进行更多调整——他们可以查看和不可以查看文章的条件可能更复杂。

于 2011-09-01T18:52:41.303 回答