Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[SPS2003 SP1 FR] Dev : Détecter le type de site (Portail, Zone du portail, WSS) ?

2 réponses
Avatar
Nicolas
Bonjour,

J'ai développé un webpart qui me permet de rajouter un menu dans toutes mes pages sur
le portail, dans mes zones et sur mes sites WSS.
Afin de pouvoir adapter le menu en fonction de l'endroit ou l'on se trouve, je
souhaiterais pouvoir détecter dans qu'elle type de site le webpart se trouve.
Par exemple, j'ai rajouté pour les administrateurs connectés la liste des actions
d'administrations possibles pour la page en cours. Par contre, je dois afficher des liens
différents en fonction que l'on se trouve dans une zone du portail, dans la page d'accueil
du portail et dans un site WSS.

Est-il possible de détecter cela facilement ?
Est-ce que quelqu'un à déjà eu à faire cela ?

Un petit exemple de code serait le bienvenue si possible.

Merci d'avance pour votre aide.

Cordialement.
Nicolas COLLET.

2 réponses

Avatar
AnthonyB
Un moyen de le détecter.

Dans le modèle objet SPS, il y a l'objet SPWeb qui dispose de la propriété
WebTemplate qui renvoie le nom du modèle à l'origine ou la propriété
WebTemplateID qui renvoie l'ID du modèle.

C'est un moyen d'identifier les types de portail en switchant sur ce que
retourne ces propriétés.
Exemple :
SPSite mySite = SPControl.GetContextSite(Context);
SPWeb monWeb = nySite.OpenWeb();

if(monWeb.WebTemplate=="SPSHOME") {
//C'est un site de type "Accueil"
}

Tu trouveras la liste des noms de template dans le fichier WebTemp.xml
Local_DriveProgram FilesFichiers CommunsMicrosoft SharedWeb Server
Extensions60TEMPLATE1036XML (si tu es en FR)

AnthonyB

"Nicolas" a écrit :

Bonjour,

J'ai développé un webpart qui me permet de rajouter un menu dans toutes mes pages sur
le portail, dans mes zones et sur mes sites WSS.
Afin de pouvoir adapter le menu en fonction de l'endroit ou l'on se trouve, je
souhaiterais pouvoir détecter dans qu'elle type de site le webpart se trouve.
Par exemple, j'ai rajouté pour les administrateurs connectés la liste des actions
d'administrations possibles pour la page en cours. Par contre, je dois afficher des liens
différents en fonction que l'on se trouve dans une zone du portail, dans la page d'accueil
du portail et dans un site WSS.

Est-il possible de détecter cela facilement ?
Est-ce que quelqu'un à déjà eu à faire cela ?

Un petit exemple de code serait le bienvenue si possible.

Merci d'avance pour votre aide.

Cordialement.
Nicolas COLLET.





Avatar
Stephane CORDONNIER [MVP]
La réponse de Anthony est juste si l'on utilise les templates standards de
SPS.

Dans le cadre de template personnalisés auxquels on aurait donner des noms
spécifiques, je ne connais rien dans le modèle objet qui permettent de
connaitre cette information.

--
Stephane CORDONNIER
Microsoft MVP - France
http://www.sharepoint-france.com


"Nicolas" a écrit dans le message de news:
eoz1wmV%
Bonjour,

J'ai développé un webpart qui me permet de rajouter un menu dans toutes
mes pages sur le portail, dans mes zones et sur mes sites WSS.
Afin de pouvoir adapter le menu en fonction de l'endroit ou l'on se
trouve, je souhaiterais pouvoir détecter dans qu'elle type de site le
webpart se trouve.
Par exemple, j'ai rajouté pour les administrateurs connectés la liste des
actions d'administrations possibles pour la page en cours. Par contre, je
dois afficher des liens différents en fonction que l'on se trouve dans une
zone du portail, dans la page d'accueil du portail et dans un site WSS.

Est-il possible de détecter cela facilement ?
Est-ce que quelqu'un à déjà eu à faire cela ?

Un petit exemple de code serait le bienvenue si possible.

Merci d'avance pour votre aide.

Cordialement.
Nicolas COLLET.