en fait topid est un paramètre rentré dans getField.
Sinon ton exemple m’a bien inspiré. Je comprend mieux cette histoire de placeholder.
Partant de ton code, comme [[UltimateParent]] ne correspondait pas à cause de l’arborescence qui est au dessus du menu que j’ai mis en exemple, je l’ai adapté comme suis :
[+phx:if=`[*id*]`:is=`[!GetField?field=`id` &parent=`1` &parentLevel=`1` &topid=`2`!]`:then=``:else=`[!GetField?field=`pagetitle` &parent=`1` &parentLevel=`1` &topid=`2`!]`+]
Et étrangement, ça ne fonctionne pas ! L’instruction du
else est exécutée !
J’ai pourtant fait qques tests. Imaginons le menu suivant avec entre parenthèse l’ID du document :
Menu 1 (7)
- sous-menu 1 (8)
- sous-menu 2 (9)
J’ai fait s’afficher les variables suivantes :
- ID du document parent : [!GetField?field=`id` &parent=`1` &parentLevel=`1` &topid=`2`!]
- ID du document actif : [*id*]
Sur la page "Menu 1", j’obtiens :
- ID du document parent : 7
- ID du document actif : 7
Sur la page "Sous-menu 2", j’obtiens :
- ID du document parent : 7
- ID du document actif : 9
Les variables sont donc correctes.
Pourquoi donc le test via PHx ne fonctionne-t-il pas ?