如何根据joomla网站所属的用户组对joomla网站上的用户名进行着色?

时间:2014-07-07 03:13:57

标签: php css joomla

我的网站基于Joomla CMS,它使用多个扩展功能,如Kunena论坛,EasySocial等,为我的社区提供了极好的社交体验。社区以游戏为中心,我们需要根据用户所属的用户组对用户进行不同的着色。

所以,Kunena论坛有自己的着色基于论坛权限(Admin,Mod,会员,禁止,访客等),EasySocial就像Facebook只有一种默认颜色供所有用户使用,就像Joomla一般。我试图看看是否有为每个Joomla用户组着色用户的选项,但这样的功能不存在。研究互联网的解决方案,没有找到任何东西。发现几个相似或相同的问题没有有用的回复。在Joomla官方支持论坛上被问到,没有收到任何回复。

现在,我知道如何做到这一点,但我不确定是否可以做到。基本上,如何呈现用户名:

<a alt="administrator" href="/community/profile/560-administrator">administrator</a>

<a class="kwho-admin" rel="nofollow" title="View administrator's Profile" href="/community/profile/560-administrator">administrator</a>

是否可以通过这种方式修改后端代码,使其根据用户组自动为<a>元素添加ID,因此我们可以为每个用户组设置CSS的颜色? (你在上面看到的“a”元素中的类只出现在论坛中,而不是整个网站,因此在这个问题上对我没有用处)

我的意思是这样的例子:

<a id="usergroup1" class="kwho-admin" rel="nofollow" title="View administrator's Profile" href="/community/profile/560-administrator">

然后在usergroup1 ID上使用CSS来着色

#usergroup1{ color: black;}

如果可以在后端改变这种情况,我真的需要一些帮助,因为我没有PHP经验。

1 个答案:

答案 0 :(得分:0)

这里的问题是并非所有扩展都会为包含用户名的标记添加class或alt属性。例如,Kunena可以渲染:

<a class="kwho-admin" href="#">mistergeko</a>

社区生成器可以呈现此内容:

<a href="#">mistergeko</a>

请注意,第二个实例上没有类,因此如何检测它们?

如果您只想定位一个呈现用户名的特定扩展名,例如:

<a class="kwho-admin" title="View administrator's Profile" href="#">administrator</a>

然后你可以使用以下CSS简单地定位它:

.kwho-admin {
    color: black;
}

不要基于ID定位用户名,因为您可能由于某种原因在将来更改此内容而忘记更新CSS。它不是一种动态方法,因此不应该这样做。