Meilleur auteur de réponses
Développement d'une Feature pour l'envoi d'un fichier

Question
-
Bonjour,
J'aimerai bien développer une feature avec un module pour l'envoi d'un fichier css automatique sur un dossier CSS pas encore crée.
Je veux le faire par une feature parce que je veux crée des étapes de création d'un modèle de site automatiquement.
Merci
Réponses
-
Tout est possible.
Mais c'est une vrai mauvaise pratique de le faire, pour tout pleins de raisons ^^
Par exemple, parce que ça la changera pour tous les sites existant, les suivants & cie.
Mais aussi, parce que si tu la casses, tu n'aura plus celle par défaut, etc.
Bref, je te déconseille fortement de modifier la v4 :)
Jicay
- Marqué comme réponse wis_soft jeudi 18 avril 2013 12:27
Toutes les réponses
-
Bonjour à vous,
Oui et votre question ?
Votre version de SharePoint ?
Des contraintes ?
Merci de détailler un peu plus...
-
-
Salut WIS,
je comprends pas l'intérêt de faire ça par feature.
Si tu dois uploader directement un fichier dans SharePoint, utilise plutôt les modules : http://msdn.microsoft.com/fr-fr/library/ms434127.aspx
Ainsi tu peux spécifier directement un fichier en local, et où il devra être uploader dans ton SharePoint.
J'espère que ça t'aidera,
Jicay
- Proposé comme réponse JcBrabant mercredi 17 avril 2013 07:57
-
Bonjour a vous,
@jcBrabant je pense que le but est d'automatiser le processus pas le faire à la main.
@wis_soft pour ton besoin vu que c'est dans le cadre d'un déploiement d'un modéle de site je te conseil d'automatiser cela via un script powershell c'est bien plus adapté dans ton cas.
Autrement dit ton script powershell fera le déploiement d'un nouveau site via le modéle puis intégrera les css automatiquement.
Une piste pour faire le déploiement d'un template:
$SPWeb = New-SPWeb -Url http://mondomaine/ -Name monsite $SPWeb.ApplyWebTemplate("{0c6caf23-bb65-4e34-88c2-8d7d0e9dccca}#WebTemplate") $SPWeb.Dispose()
Ton template doit être global et pour avoir cette liste en powershell: Get-SPWebTemplate
Si besoin hésite pas à revenir vers nous pour la réalisation de ce script, mais honnetement c'est bien la meilleure solution dans ton cas je pense.
Bon courage,
valentin
-
Salut,
@Valentin, je pense que son problème c'est plus le "intégrera les css automatiquement." que l'application du WebTemplate une fois créé.
Donc la solution du module pour "intégrer automatiquement" son css, prends tout son sens.
Jicay
- Proposé comme réponse JcBrabant jeudi 18 avril 2013 11:11
-
-
Merci pour vos réponses. J'ai trouvé la solution :) j'ai crée un module avec le fichier css et elements.xml pour la définition de l'emplacement a envoyé du fichier css vers quel bibliothèque et ça m’envoie correctement le fichier.
Le problème qui se pose après c'est au niveau de la MasterPage j'ai une master page la v4.master modifié sur le modèle de site si je la déploie automatique ça ne prend pas en considération les changements (apparemment ça ne remplace pas la v4.master par défaut) donc j'aimerai bien qu'elle soit remplacé aussi :)
- Modifié wis_soft jeudi 18 avril 2013 10:20
-
Salut Wis,
pour ça, il faudra passer par un feature event receiver, qui affectera cette nouvelle masterpage au site, après l'upload.
Tu as une propriété MasterUrl dans l'objet SPWeb, qui te permet de donner l'url de la masterpage à appliquer.
ex :
site.RootWeb.MasterUrl = SPUrlUtility.CombineUrl(site.ServerRelativeUrl, "/_catalogs/masterpage/OneWiki.master"
Voilà, j'espère que ça t'aidera !
- Proposé comme réponse JcBrabant jeudi 18 avril 2013 11:10
-
-
Wis,
si tu veux créer un feature event receiver, il faut que tu cliques sur la feature que tu souhaites, et tu cliques sur "Ajouter un Event Receiver".
Généralement, je l'ajoute sur une feature de scope Site.
Tu devrai avoir un fichier cs avec quelques qui ressemble à ça :
[Guid("cd00dc7f-4a10-41ea-b4c2-5277e99fa607")] public class SiteEventReceiver : SPFeatureReceiver { // Uncomment the method below to handle the event raised after a feature has been activated. public override void FeatureActivated(SPFeatureReceiverProperties properties) { try { var site = properties.Feature.Parent as SPSite;
Regardes par là pour plus d'infos !
http://msdn.microsoft.com/fr-fr/library/ee231604.aspx
Jicay
-
-
Tout est possible.
Mais c'est une vrai mauvaise pratique de le faire, pour tout pleins de raisons ^^
Par exemple, parce que ça la changera pour tous les sites existant, les suivants & cie.
Mais aussi, parce que si tu la casses, tu n'aura plus celle par défaut, etc.
Bref, je te déconseille fortement de modifier la v4 :)
Jicay
- Marqué comme réponse wis_soft jeudi 18 avril 2013 12:27
-