Question

J'ai un site sur lequel j'ai des colonnes non scellées et ajoutées à un type de contenu, «dossier». Maintenant, je souhaite ajouter ce type de contenu à une bibliothèque de documents, mais je n'ai pas la possibilité de l'ajouter dans les paramètres de la bibliothèque de documents -> Ajouter à partir des types de contenu de site existants. Je ne vois pas les "types de contenu de dossier" dans le menu déroulant des groupes. De plus, si je déplace le type de contenu vers un autre groupe qui apparaît dans cette liste déroulante, cela n'apparaît toujours pas. Y a-t-il quelque chose que je dois faire pour faire de ce type de contenu un choix pour ma bibliothèque de documents ou un endroit pour choisir quels groupes de contenu sont utilisables pour un site?

Merci beaucoup

Était-ce utile?

La solution

Si vous avez créé votre propre type de contenu et qu'il est publié / activé sur SharePoint, il devrait être disponible pour que vous puissiez ajouter à une bibliothèque de documents. Assurez-vous simplement que votre bibliothèque de documents est configurée pour prendre en charge les types de contenu.

Dans la section Paramètres avancés des paramètres de la bibliothèque de documents, sélectionnez Yes en dessous de Allow management of content types? Puis continuez comme vous étiez. Paramètres -> Ajouter à partir des types de contenu de site existants.

Vous pouvez utiliser une application de console (Ref MSDN) pour ajouter du type de contenu à une liste sur votre site. Il vous donne également des messages utiles sur l'état actuel des choses.

class Program {
    static void Main(string[] args) {
        using (SPSite siteCollection = new SPSite("http://YOUR_SPSITE")) {
            using (SPWeb site = siteCollection.OpenWeb() {

                // Get a content type.
                SPContentType ct = site.AvailableContentTypes["YOUR_CONTENT_NAME"];

                // The content type was found.
                if (ct != null) 
                    // Get a list.
                    try {
                        SPList list = site.Lists["YOUR_DOCUMENT_LIBRARY_NAME"]; // Throws exception if does not exist.

                        // Make sure the list accepts content types.
                        list.ContentTypesEnabled = true;

                        // Add the content type to the list.
                        if (!list.IsContentTypeAllowed(ct))
                            Console.WriteLine("The {0} content type is not allowed on the {1} list",
                                                ct.Name, list.Title);
                        else if (list.ContentTypes[ct.Name] != null)
                            Console.WriteLine("The content type name {0} is already in use on the {1} list",
                                                ct.Name, list.Title);
                        else
                            list.ContentTypes.Add(ct);
                    } 
                    catch (ArgumentException ex) // No list is found.                         
                    {
                        Console.WriteLine("The list does not exist.");
                    }
                else // No content type is found.
                    Console.WriteLine("The content type is not available in this site.");
            }
        }
        Console.Write("\nPress ENTER to continue...");
        Console.ReadLine();
    }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top