Я пытаюсь прикрепить небольшую CMS к веб-сайту, который я создаю. Однако я столкнулся с небольшой проблемой. CMS использует функции PHP для вставки меню, эти функции PHP создают HTML. Конкретная функция, которую я хочу использовать (treemenu), создает вложенный язык, который затем можно использовать для выпадающего меню. Однако вложенный ul li структурирован так:
<li>Projects (Menu Level 1)</li>
<ul>
<li>Project 1 (Menu Level 2)</li>
<li>Project 2 (Menu Level 2)</li>
<li>Project 3 (Menu Level 2)</li>
</ul>
<li>News (Menu Level 1)</li>
<li>Contact (Menu Level 1)</li>
При создании выпадающего меню в CSS я считаю, что уровень меню 1 li должен обернуть его дочерние элементы следующим образом:
<li>Projects (Menu Level 1)
<ul>
<li>Project 1 (Menu Level 2)</li>
<li>Project 2 (Menu Level 2)</li>
<li>Project 3 (Menu Level 2)</li>
</ul>
</li>
<li>News (Menu Level 1)</li>
<li>Contact (Menu Level 1)</li>
Я никогда прежде не работал с PHP и поэтому не знал бы, как изменить функцию, чтобы выполнить вышеизложенное. Я надеюсь, что это будет простое изменение. Ниже приведена функция PHP, которая выводит первый пример структуры:
function treemenu($generat=0) {
global $pagenum, $menu, $selected, $extension, $set;
$count=0;
$out="\n";
$intend=0;
while($menu[$count][0] != "") {
if(strpos($menu[$count][3],"#") === false) {
if($menu[$count][2]=="0" && $intend==2) {
$intend--;
$out.="</ul>\n";
}
if($menu[$count][1]=="0" && $intend==1) {
$intend--;
$out.="</ul>\n";
}
if($menu[$count][1]!="0" && $intend<1) {
$intend=1;
$out.="<ul>\n";
}
if($menu[$count][2]!="0" && $intend<2) {
$intend=2;
$out.="<ul>\n";
}
$out.="<li class=\"LNE_menu\"><a ";
if($menu[$count][4]==$selected['name'])
$out.= 'class="selected" ';
if(strpos($menu[$count][3],"*"))
$out.='href="'.str_replace("*", "",$menu[$count][3]).'">';
elseif($generat)
$out.='href="'.$menu[$count][3].".".$set['extension'].'">';
else
$out.='href="'.$set['indexfile'].'?page='.$menu[$count][3].'">';
$out.=$menu[$count][4]."</a></li>\n";
}
$count++;
}
return $out;
}
Может ли кто-нибудь указать мне правильное направление относительно того, как сделать закрывающий тег li элемента меню уровня 1 сразу после него, как во втором примере?