Yulo
Постоялец
- Регистрация
 - 21 Апр 2008
 
- Сообщения
 - 153
 
- Реакции
 - 182
 
- Автор темы
 - #1
 
Задача думаю очень простая для тех кто знаком с php/ Вот код который выводит меню нужной иерархии
	
	
		
			
	
	
	
		
		
	
У элементов меню есть порядковый номер 1,2,..50..129..241.. и т.д. Я так понял что вот этот кусок кода
	
	
	
		
 выводит мне сейчас меню в 2 колонки, если у элелемента стоит номер меньше или равно 100 он в одну колонку идет если больше то уже в другую. Как подправить этот код чтоб я мог поделить меню на 4 колонки тоесть если я проставлю элементам номера меньше 100 от 101-200 от 201-300 и 301-400. 
Вот кусок кода в шаблоне
	
	
		
			
	
	
	
		
		
	
	
		
			
		
		
	
				
			
		PHP:
	
	<?if (!empty($arResult)){
        $i = 0;
        $b = 0;
    foreach($arResult as $arElement){
        if($arElement["DEPTH_LEVEL"] == 1){
            $i++;
            $sectionID = $arElement["PARAMS"]["ID"];
            $IBLOCK_ID = $arElement["PARAMS"]["IBLOCK_ID"];
            $arResult["SECTIONS"][$sectionID] = $sectionID;
            $arResult["ITEMS"][$i] = array(
                "TEXT" => $arElement["TEXT"],
                "LINK" => $arElement["LINK"],
                "ID" => $arElement["PARAMS"]["ID"],
                "SELECTED" => $arElement["SELECTED"],
                "PICTURE" => $arElement["PARAMS"]["PICTURE"],
                "DETAIL_PICTURE" => $arElement["PARAMS"]["DETAIL_PICTURE"],
                "UF_DESC" => $arElement["PARAMS"]["UF_DESC"],
                "IBLOCK_ID" => $arElement["PARAMS"]["IBLOCK_ID"],
                "ELEMENT_CNT" => $arElement["PARAMS"]["ELEMENT_CNT"]
            );
        }
        elseif($arElement["DEPTH_LEVEL"] == 2){
            $b++;
            $from = $arElement["PARAMS"]["FROM_IBLOCK"] <= 100 ? 1 : 2;
            $arResult["SECTIONS"][$arElement["PARAMS"]["ID"]] = $sectionID;
            $arResult["ITEMS"][$i]["ELEMENTS"][$from][$b] = array(
                "TEXT" => $arElement["TEXT"],
                "LINK" => $arElement["LINK"],
                "SELECTED" => $arElement["SELECTED"],
                "ELEMENT_CNT" => $arElement["PARAMS"]["ELEMENT_CNT"]
            );
        }elseif($arElement["DEPTH_LEVEL"] == 3){
            $arResult["SECTIONS"][$arElement["PARAMS"]["ID"]] = $sectionID;
            $arResult["ITEMS"][$i]["ELEMENTS"][$from][$b]["ELEMENTS"][] = array(
                "TEXT" => $arElement["TEXT"],
                "LINK" => $arElement["LINK"],
                "SELECTED" => $arElement["SELECTED"],
                "ELEMENT_CNT" => $arElement["PARAMS"]["ELEMENT_CNT"]
            );
        }
    }
}
?>
	У элементов меню есть порядковый номер 1,2,..50..129..241.. и т.д. Я так понял что вот этот кусок кода
		PHP:
	
	 $from = $arElement["PARAMS"]["FROM_IBLOCK"] <= 100 ? 1 : 2;
	Вот кусок кода в шаблоне
		PHP:
	
	<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?$this->setFrameMode(true);?>
<?if (!empty($arResult)):?>
    <ul id="leftMenu">
        <?foreach($arResult["ITEMS"] as $nextElement):?>
            <li<?if($nextElement["SELECTED"]):?> class="selected"<?endif;?>><a href="<?=$nextElement["LINK"]?>"><ins><?=(!empty($nextElement["PICTURE"]["src"]) ? '<img src="'.$nextElement["PICTURE"]["src"].'" alt="">' : '')?><span><?=$nextElement["TEXT"]?></span></ins></a>
                <div class="drop">
                    <?if(count($nextElement["ELEMENTS"][1])):?>
                        <ul>
                            <?foreach($nextElement["ELEMENTS"][1] as $next2Elements):?>
                                <li><a href="<?=$next2Elements["LINK"]?>"><span><?=$next2Elements["TEXT"]?></span></a></li>
                                    <?if(!empty($next2Elements["ELEMENTS"])):?>
                                        <?foreach($next2Elements["ELEMENTS"] as $next3Elements):?>
                                            <li><a href="<?=$next3Elements["LINK"]?>"><?=$next3Elements["TEXT"]?></a></li>
                                        <?endforeach;?>
                                    <?endif;?>
                            <?endforeach?>
                        </ul>
                    <?endif;?>
                    <?if(count($nextElement["ELEMENTS"][2])):?>
                        <ul>
                            <?foreach($nextElement["ELEMENTS"][2] as $next2Elements):?>
                                <li><a href="<?=$next2Elements["LINK"]?>"><span><?=$next2Elements["TEXT"]?></span></a></li>
                                    <?if(!empty($next2Elements["ELEMENTS"])):?>
                                        <?foreach($next2Elements["ELEMENTS"] as $next3Elements):?>
                                            <li><a href="<?=$next3Elements["LINK"]?>"><?=$next3Elements["TEXT"]?></a></li>
                                        <?endforeach;?>
                                    <?endif;?>
                            <?endforeach?>
                        </ul>
                    <?endif;?>
                    <?if(!empty($nextElement["DETAIL_PICTURE"])):?>
                    <ol>
                        <li><span><?=$nextElement["TEXT"]?></span></li>
                        <li><a href="<?=$nextElement["LINK"]?>" class="pic"><img src="<?=$nextElement["DETAIL_PICTURE"]["src"]?>" alt="<?=$nextElement["TEXT"]?>"></a></li>
                        <?=str_replace("#SITE_DIR#", SITE_DIR, $nextElement["UF_DESC"])?>
                    </ol>
                    <?endif;?>
                </div>
            </li>
        <?endforeach;?>
    </ul>
<?endif?>