Bonjour à tous,

Je fais un site multilangue et pour le menu, j'ai pensé utiliser le xml.
Voilà, j'en suis à la génération du menu mais j'ai des difficultés de logique de boucle et surement de syntaxe (c'est tout nouveau pour moi cette manipulation).

Voici mon XML
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 
<?xml version="1.0" encoding="utf-8"?>
<menu>
	<niveau1>
		<titre>Home</titre>
		<link>home</link>
	</niveau1>
	<niveau1>
		<titre>Our people</titre>
		<link>our-people</link>
	</niveau1>
	<niveau1>
		<titre>Our services</titre>
		<link>our-services</link>
		<niveau2>
			<titre>Leadership</titre>
			<link>leadership</link>
		</niveau2>
		<niveau2>
			<titre>Coaching</titre>
			<link>coaching</link>
		</niveau2>
		<niveau2>
			<titre>Mentoring</titre>
			<link>mentoring</link>
		</niveau2>
	</niveau1>
	<niveau1>
		<titre>Join our team</titre>
		<link>join-our-team</link>
	</niveau1>
	<niveau1>
		<titre>Core values &amp; code of Ethics</titre>
		<link>core-values-code-of-ethics</link>
			<niveau2>
				<titre>Item 1</titre>
				<link>item-1</link>
			</niveau2>
			<niveau2>
				<titre>Item 2</titre>
				<link>item-2</link>
					<niveau3>
						<titre>Sub Item 1</titre>
						<link>sub-item-1</link>
					</niveau3>
			</niveau2>
	</niveau1>
	<niveau1>
		<titre>Contact</titre>
		<link>contact</link>
	</niveau1>
</menu>
Et voici mon début de php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
$menu = simplexml_load_file('menu.xml');
echo '<ul>';
foreach ($menu->niveau1 as $link){
	echo '<li>';
		echo '<a href="'.$link->link.'" class="info">'.$link->titre.'</a>';
	if($menu->niveau2){
		echo '<ul>';
		foreach ($menu->niveau2 as $link2){
			echo '<li>';
				echo '<a href="'.$link2->link.'" class="info">'.$link2->titre.'</a>';
			echo '</li>';
		}
		echo '</ul>';
	}
	echo '</li>';
}
echo '</ul>';
J'affiche bien le niveau1 mais pas niveau2.

Quelqu'un aurait une idée de boucle.

Merci d'avance