joomla模块位置如果

时间:2012-06-25 07:18:20

标签: php joomla

我正在制作一个响应式joomla模板, 但我陷入了困境。

我有四个模块位置:header1,header2,header3,header4 如果只有位置有效,那么它的等级将是'col12'& '最后'

如果两个位置然后类将是'col6'表示位置和类'last'仅用于最后位置

如果有位置,则所有位置的等级为“3”,最后一个等级的等级为“最后”

我如何在数组中执行此操作? 这样做的任何好方法

目前我正在使用此功能但工作不正常 或者请告诉我在JAT3框架中使用的块系统 如何为我的模板制作自己的块系统,如jat3

if($header1 && $header2 && $header3 && $header4 > 0){
    $hCols='three';
}elseif($header1 && $header2 && $header3 > 0){
    $hCols='four';
    $h3last='last';
}elseif($header1 && $header2 > 0){
    $hCols='six';
    $h2last='last';
}elseif($header1 > 0){
    $hCols='twelve';
    $h1last='last';
}

1 个答案:

答案 0 :(得分:0)

您可能打算检查所有值都不为空(我更喜欢使用isset) - 但实际上您只检查每个if中的最后一个值,您可以这样做:

if($header1 > 0 && $header2 > 0 && $header3 > 0 && $header4 > 0){
    $hCols='three';
}elseif($header1 > 0 && $header2 > 0 && $header3 > 0){
    $hCols='four';
    $h3last='last';
}elseif($header1 > 0 && $header2 > 0){
    $hCols='six';
    $h2last='last';
}elseif($header1 > 0){
    $hCols='twelve';
    $h1last='last';
}

您也可以只使用一个&(按位运算符)来执行此操作(这可能是您最初的意图):

if($header1 & $header2 & $header3 & $header4 > 0){
    $hCols='three';
}elseif($header1 & $header2 & $header3 > 0){
    $hCols='four';
    $h3last='last';
}elseif($header1 & $header2 > 0){
    $hCols='six';
    $h2last='last';
}elseif($header1 > 0){
    $hCols='twelve';
    $h1last='last';
}