2012-12-30 13 views
2

我想执行css样式,但仅限于特定的Joomla用户组。我的目标是直接在我的Joomla模板中包含php代码。只为特定的Joomla用户组加载css样式

我试图找到如何做(我不是一个编码器),我做了一些测试,但没有成功。例如,我发现这个代码在一个论坛:

<?php 
$user =& JFactory::getUser(); 
if (!$user->author) { 
?> 
<style>#myclass{display:none; width:0px;}</style> 
<?php 
} 
?> 

但这不工作,因为我不想因为这个代码,似乎是为Joomla 1.5的用户组ID,也执行的风格,我的Joomla 2.5下很。

请提供任何线索?

回答

2
$user =& JFactory::getUser(); 
$groupIDs = array(); 
foreach($user->groups as $groupID){ 
    $groupIDs[] = $groupID; 
} 

var_dump($groupIDs); 

如果你的$groupIDs数组包含你需要的样式,就像你现在所做的那样回显样式。记住$groupIDs是一个数组,所以你将有循环遍历数组来找到你需要的id。使用foreach来完成它。

如果您有任何问题,请告诉我。

根据要求更新了答案。

$user =& JFactory::getUser(); 
$groupIDs = array(); 
foreach($user->groups as $groupID){ 
    $groupIDs[] = $groupID; 
} 
foreach($groupIDs as $groupID) 
{ 
if($groupID == 2) 
{ 
echo '<style>#myclass{display:none; width:0px;}</style>'; 
} 
} 
+0

感谢的答案,但你可以记下确切的代码(准备在我的模板文件中),包括CSS和组ID号码谁在我的情况是2号吗?就像我说我不是一名编码员,我也没有什么好的知识。我尝试了很多时间来学习一点,但仅仅是一场噩梦:-(。谢谢 – dotcom22

+0

哪个组合没有你想要的风格? – Techie

+0

组合号码2谁是已注册的,但将来我可能需要禁止其他一些组合风格为一些其他自定义组..因此,我认为最好指定组ID。谢谢 – dotcom22