In MOSS 2007 there was always the issue of how do we synchronize Content Types across Sit Collections. This was really problematic as it required either some custom coding or alternatively lots of manual configuration. This was also one of the many reasons that clients resorted to using as few Site Collections as possible
Publishing content types through the Managed Metadata Service is an extremly powerful feature of SharePoint 2010 but it does require some steps. The ability now to control content types from a central location and control all aspects of publishing is an amazing feature so check it out!
I have broken this down into three sections: Configuring the Managed Metadata Service, Configuring the Content Type Hub and finally configuring receiving site collections since you need to do all three to get this working, but once you do you can easily update your content types cross site collections and even cross farms!
Configuring the Content Type Hub
The first things to do is to create a Site Collection that will act as our content type hub. This hub will be where we will define the content types that we wish to share out via the Managed Metadata Service.
Some things to note: it doesn’t matter what the Site Collection template that you use but I would suggest using a blank template since you dont get any added overhead of some of the lists that are created.
1) Create a Site Collection and enable the ‘Content Type Syndication Hub’ feature in Site Collection Settings.
This will mark the site collection as our hub that we can expose via our Managed Metadata service. Enable this feature in the Site Collection Features listing.
2) Create a Content Type that you wish to publish out.
This is the same as creating a content type in MOSS 2007 but latter on you will have some other options available as shown in the below image. For now just create a content type and add some columns, even cooler you can now create your own Managed Metadata columns that you can use, sweet!
Configuring the Managed Metadata Service (MMS)
Next we have to configure the Managed Metadata Service so that it can expose our content types stored in our hub that we created above. This service will then expose our content types to which ever Web Applications are serviced by it.
1) Create or alter a MMS so that the content type hub is the Site Collection that we created in the first steps.
This will tell the MMS that it is to consume the Content Types from this site collection. To do this go to Central Administration -> Application Management -> Manage Service Applications then click on the ’Managed Metadata Service’ row and then select ‘Properties‘. Its actually not that easy, if you click on the text you will be taken to the Term Store page which you dont want so just highlight the row and click manage as seen below:
Now scroll to the bottom and type in the URL of the Site Collection that we have set up as our Site Collection Hub.
Also check the ‘Report Syndication Errors…” box as well, why wouldn’t you?
2) Configure the MMS Connection to consume the content types.
Now we need to tell the service connection where to consume content types from. To be honest I should know the exact difference between the Connection and the Service but I dont, sorry :).
What I do know is that you have to follow the same procedure as above except this time you select the row ‘Managed Metadata Service Connection‘ and then press properties. Don’t click on the actual text or again you will be taken to th area where you can enter term sets.
Once you are there you will see the screen below so select the ‘Consumes content types from the Content Type Gallery..‘ so that this connection will use the content types from our Site Collection.Incidentally you can also make this MMS the default for keyword and term sets if you want to in here as well.
3) Create a new Site Collection to consume the Content Types from
Easy enough but remember that the new Site Collection has to be on a Web Application that is being serviced by the MMS that we just configured!
Pushing out content types
We are nearly there. So we have configured the Content Type Hub, set up the Managed Metadata Service and now we are ready to start pushing the Content Types out, but there is a couple more steps unfortunately!
1) Publish out the select Content Types
Now that we have everything set up lets publish our types. Select the content type we created and click on ‘Manage publishing for this content type‘, you should see the screen below. Then click on ‘OK‘ to publish this guy out!
2) Fire off the Timer Jobs for publishing Content Types
Since we are impatient we have to set off the timer jobs ourselves to get this running. Go to Central Administration -> Monitoring -> Review Job Definitions and run the Content Type Hub job, then run the Content Type Subscriber job in that order.
3) Check out the content types in the receiving Site Collection
Now go back to the receiving site collection and check out the new content types. Click on Site Settings ->Content Type publishing and see the new content types! Or not…