Join Gini von Courter for an in-depth discussion in this video Create a content type, part of SharePoint Online Essential Training.
- View Offline
- [Voiceover] We're going to create a new content type for a specific type of document that's called a budget, so that when we save any document that's a budget, we can take advantage of the metadata that we're going to attach to that content type. Remember that to get to get to Site Content Types, we went to the level of site where we wanted to create the content type, and then we chose Site Settings. However, I'd like to create this content type in The Landon Hotel intranet at the site collection level.
The reason is we have someone who's working on our SharePoint taxonomy who says that this kind of a budget document is going to exist everywhere. As a matter of fact, we're going to have a type of document called our document and then a budget document, but I'm going to skip that middle step for right now. We can go to Site Settings, that will get us there. I could also have used this breadcrumb to go back, but I don't want to create a content type at my level of a regional site if it really belongs at the enterprise level.
When I'm in Site Settings even for Team Landon San Francisco, I can click here to go to my top level site settings. I know then exactly where I am. In my Site Collection settings, in the Web Designer Galleries, I will find Site content types. This looks different than the site content types we saw a moment ago because this also has a source, but it's the same groups. What we'd like to do is create a new content type.
When the New Site Content Type page loads, I need to provide a name for this. There's even a hierarchy of how we would create names. This is a document so I want to include document in its name. If we're going to have Landon documents, then I might create first a Landon document and then inherit that to be a Landon budget document. I'm actually gonna delete this content type when I'm done and go back and do all of those layers of work. So if we have Landon Documents, and then within that Budget Documents.
Or I could have a Landon Finance Document. You see I want to be very clear about what this is, but this is going to a Landon Budget Document. Provide a description, use this content type to create budget documents. Parent Content Type, I need to choose one of the types of content. There is no choice here that says create my own content type, I can't do that. I have to begin with one that exists already. So I'm choosing a Document Content Types group, so that I can find my document content type.
Notice again, there's nothing here that says create one from scratch. All of the content types that we create will be based on other other content types. Now the description for document is create a new document. So wow, that actually encourages me to come back up here to my Description and say create a new budget document, very consistent, and consistency is nice. Now I'm asked where do I want to store this. If I'm only going to create a small number of new content types, I can stick them all into the group called Custom Content Types.
Imagine instead I'm going to create several content types related to financial documents. So I might want a new group that is financial documents, financial content types. Or imagine that I'm going to create a number of content types that are related to sales, and a number of content types. It depends on how many I'm going to create. If I create 20 content types, I don't want them all in Custom. So it would make sense to me to give some thought to how many content types I'm going to create.
On the other hand, if I'm just starting out, I'm trying this out, I'm thinking I'll create one, put it in Custom Content Types for now. Put the next two there as well. Click OK and that's the framework for my content type, but I still need to fill in the details. This is our new content type, and remember that this was built based on the parent content type of Document. That parent content type has some attributes already, right? It has a name and a description. It's a member of a group, and it has one column that's a title that is optional, and a column that is required, which is the name of the document.
In other words, a file name. If I would like to add other columns and I want to, I can really only add them from one place, from Site Columns. I don't get to create new columns here in the same way that I created columns in my apps. Instead I need to either choose a column that already exists from an extensive gallery of site columns, or add what I'd like to have to that gallery of site columns.
Let's start first by looking at the existing site columns. The site columns like the content types are arranged in groups. All Groups is a pretty long list. Alphabetical order, not a bad thing. If I'm looking, for example, for Core Document Columns, here they are, Author, Category, Copyright and so on. Not a bad thing, Subject Version. So if I want to require any of these, now you know that Date Created, Date Modified are gonna show up there anyway, I don't really have to worry about that.
But what I'd like to have is I'd like to have three specific columns. So the first I'd like to have is who is the owner of this document, and that may not be the author. One person is gonna own this document. If I look down my alphabetical order list, I'll find that Owner is an available column. The description of it is owner of this document. That seems very consistent with what I'd like to have. Even though this comes out of the reports group, that's fine. I'm gonna click that in over here by clicking Add.
The next question is imagine that I am modifying my Landon budget document content type, and in the meantime someone else has created their own content type that relies on this content type. It inherits from this content type in the same way that I'm relying upon the Document content type. The question here is in this instance do I want to update any existing content types that inherit from this type? The problem is that if someone has customized those types, I can discard their customizations when I do this.
Even though I suspect no one else is creating content types, right now I am not going to do that. I'm going to choose No. Much of the time what I want to choose is Yes, particularly as I'm creating a site with the content types initially, that's the purpose. I can create a higher level content type, like Landon documents, then I can create Landon financial documents. If I modify Landon documents, I can say Yes, update Landon financial documents content type as well. But right now I'm going to say No.
Well, I've actually changed my mind. I know nobody else is working here right now, so I'm gonna say OK. We're not really in production. We only have our pilot team up, that's cool. Now I also want to add a scope for this document. This is a budget document. Is this a budget for a department? Is this a budget for a project? A budget for a hotel? A budget for the North American region or the Latin American region? Or is this an enterprise-wide budget? There's one other possibility. It could be a budget for a customer or event.
All right, do I have a column that looks like that? You can go look, but I promise you it doesn't exist. We're going to create a new site column. The column name is going to be, let's say, Document Scope. This is going to be Choice. This is where to me content types begin to pay off because I'm going to create this, enter the choices that are going to be used. It might be that we'll want to modify one of those choices later perhaps, but by and large these choices will be able to be used throughout our enterprise because of where I'm creating this.
They can use this in New York, in Detroit, in Atlanta, all of the different sites within our area. If I believe that we were going to change this scope, I would be really wise to enter these values into Excel, export it to SharePoint as an app, a list in this particular site, and make this is a lookup. Because if I do, then I will never need to come back and edit this again. I would only need to modify the lookup list. So remember in times of a list of uncertain choices that lookup is your very good friend.
If we create that list, we can make that read only for almost everybody and only allow a couple of people to edit it by setting our permissions. But I'm going to create this as a choice because I don't already have a lookup. I could just pause here and go do my other work so I did have a lookup, but we'll do choice. The question is where does this site column now go? Just as there was a list of custom content types, there's a list of Custom Columns. There isn't anything in it yet, but as soon as I begin creating custom columns, I have a choice to throw things in there.
I could also create a new group for custom columns. There are Core Document Columns, and I could add it to the Core Document Columns, but that's sometimes is confusing later when people say, well our core document list looks different than yours. I could create a new group that is called Custom Document Columns, or Landon Document Columns. Then we have to fill out Additional Column Settings. First the Description, which is budget document scope.
Require that this column contains information? Well, if I require that it contains information, then I have to make sure that at the time someone's saving it, they know what those choices are. It might be that they're not sure yet, so I think I will leave this. I'm going to list these items. We have Enterprise scope, we have Region scope, we have Department scope, we have Hotel scope, but remember we also have Customer scope.
I think we'll enter Project separate from Customer, but Customer Event scope, that makes sense. So here's a budget for what we're going to do for this customer versus here's a budget for the renovation that we're doing right now in New York City, you bet. Display choices using a drop down, which is choose one. Allow fill-in choices? This is where I wonder if I'm not sure that I have all of the choices, we know how to fix this. I can enter another scope of Other and see if it gets used a lot, and then add to this list to fix that.
Remember when I do though, that I'll be faced with deciding whether I would like all the content types that rely on this to inherit this as well, a forced inheritance. I can have a default value or I can delete it so there is no default value. Right now do I want to update all content types inheriting from this type, yes or no? I'm gonna say Yes, but before I do that, I can validate entries that are used. Now I don't do that for choice because what makes the choice invalid is you tried to type something and didn't choose from the list.
But if I'm having people enter text or numbers or dates, I could, for example, require that you can't enter a date that is after today if you're reporting expenses, that you can't enter a date that's before today if you're requesting space for an event, and so on. So the column validation will allow us to say when someone enters information into this column, no matter where they are when they use it, they will be required to enter valid data.
Let's click Yes. Here's my new content type then. We have a Name, a Title, an Owner, a Document Scope. I'd really like to have one more thing, it's a budget. I'd like to know if it has a fiscal year. That wouldn't necessarily apply to a customer budget, but it might so let's go add another site column. Fiscal Year or simply Year. We use a calendar year here, that will work for us. My choice is Choice.
Existing group, Landon Document Columns. Description, fiscal year for this document. Why is that important? Because in 2017 I might be working on a budget for 2020. I can't simply use the date I'm working on something as the valid date for the fiscal year that should be assigned to that document. First question, how far back do I want to go? If I believe we might upload documents to this library for the last three years, here we go, right, 2013, 2014, 2015.
Another possibility is to not care if we would just leave it blank if it was in the past. But normally that's not what we're gonna do. I don't have to enter 99 years of dates or even 15 years of dates, but we do have to have some kind of an agreement when we're creating lists like that what our end date is so that we don't have Y2K happening in a random way across all of our applications. If we agree that we have a 2020 vision about what we're doing in SharePoint for example, we could say okay in 2020 any of these lists that were typed in like this we need to be able to change.
Remember that we would've always had the option to create a fiscal year list that we could use as a lookup. Lookups are a little bit slower but other than that, and needing to make sure your permissions on them on very clear, they're nice to use. Allow fill-in choices? Well, that's another thing we could've done. I could've left these old years out of the list and allowed someone to fill in choices. If I do that, notice the default value is always what's at the top. If I want people to be able to just tab through the default value and say cool, that's fine.
But if I want them to have to choose from the list, so that when it gets to be January of 2017, they don't get lazy and then automatically enter the wrong year, I'll just blank out our default value, click OK. I could've done if I'd wished some column validation and that actually wouldn't have been a bad one to validate. Notice when I go in, I'm forced to return to edit the site column. But we could do a piece of column validation here.
Say, for example, that this column which is called Year, and we'd need to put that in brackets, is greater than, and let's say for example, we're not willing to have anything in here before 2000. So Year is greater than 2000. User message, you must enter a year greater than 2000. I could say you must choose from the list or, that'll work.
If you want to know more about the syntax for formulas, you can click right here. It will open in a new window and give you some information, examples of formulas in SharePoint, like a mathematical formula, to add numbers, to divide and so on. Just click OK. Says I'm about to update all lists using the site column with the settings on this page. This will happen even if you haven't made any changes. Why is it telling me this when it didn't before? Because I actually have a site column in use in the library now.
So click OK. Now for each of these columns, I can choose whether it is required or optional, and I'm going to require that a year be entered. Notice that that changed here. I could also require Document Scope and require an Owner. If I click on Document Scope, that's required. Remember we gave Other as a choice, so there's no way that there isn't a choice that someone could make in order to post their document, and required.
Titles typically are optional. If someone doesn't fill in a title, then the file name is used. Here's my new content type. This is absolutely amazing. I have my columns. If I wanted to reorder them, I can reorder them, but we're good. So at this point I'm ready to use this content type, which we'll do in the next movie.
- What is SharePoint?
- Understanding SharePoint roles
- Searching SharePoint sites
- Editing, saving, and sharing documents
- Using OneDrive for file storage
- Working with libraries and list apps
- Creating custom and dynamic views
- Changing file, item, and list settings
- Using the SharePoint social features, including your newsfeed and Delve
- Building site collections
- Working with app parts and web parts
- Displaying images and media
- Integrating SharePoint 2016, Office 2016, and Office 365
- Customizing search in SharePoint
- Adjusting SharePoint permissions
- Creating content types and document sets