Queridísimos amigos. Sigo desarrollando un menú buenísimo, creado inicialmente por el colaborador
Triby.
El desafío ahora es sumar los hijos de las categorías, agregando "(número)", por ejemplo, de esta forma:
Código HTML:
Ver originalCategoria_a (5)
Categoria_b (12)
Categoria_c (0)
Código del Menú:
Código PHP:
Ver original// Cargamos opciones del menú
function cargaMenu($mysqli) {
// Falta una columna que permita seleccionar orden
// Ahora se muestran como fueron dados de alta
$sql = "SELECT * FROM productos";
$res = $mysqli->query($sql);
while($row = $res->fetch_assoc()) {
$id_padre = $row['productos_parent_id'];
// Verificamos si existe el menú padre o lo creamos
(!isset($menu[$id_padre]) && $menu[$id_padre] = array()); // Agregamos ID del elemento actual al padre
$menu[$id_padre][] = $row['productos_id'];
// Agregamos el elemento actual al arreglo 'todos'
$menu['todos'][$row['productos_id']] = $row;
}
return $menu;
}
// Mostramos menú
function menu($id_padre, $hijos, $menu) {
$html = "<ul>\n";
foreach($menu[$id_padre] as $id_menu) {
$html .= '<li><a href="pagina.php?opcion='.$id_menu.'">'.$menu['todos'][$id_menu]['productos_nombre'].'</a>';
// Este menú tiene hijos?
if(isset($menu[$id_menu])) { //Si quiero ver los hijos
if($hijos=="ver_hijos") {
$html .= menu($id_menu, $hijos, $menu );
}
//o no verlos
if($hijos=="ocultar_hijos "){
}
}
$html .= "</li>\n";
}
$html .= "</ul>\n";
// Devuelve el valor
return $html;
}
// Lo hacemos funcionar
$mysqli = crearConexion();
$menu = cargaMenu($mysqli);
// Mostramos menú, padre=0 para menú principal
echo menu(1, "ocultar_hijos", $menu);
Esto muestra en pantalla:
Código HTML:
Ver originalCategoria_a
Categoria_b
Categoria_c
No sé por donde empezar, creería uso de un arreglo, luego agregarlo a algo como esto:
Código PHP:
$html .= '<li><a href="pagina.php?opcion='.$id_menu.'">'.$menu['todos'][$id_menu]['productos_nombre'];
$html .=" ( aquí número )";
$html .='</a>';