Best practice for document type inheritance/tree structure
Currently I use this structure:
Content pages:
- Website (Master)
- Page 1 (Page)
- Page 2 (Page)
Document types:
- Master
- Page
The Master document type contains properties such as SEO meta tags, meta description, umbracoNaviHide etc - properties I want on every page of the site.
The problem I am having is when the master template I am using has an area of text I wish to be editable, for example a footer copyright text. Using my current tree structure if I add this copyright text as a property of the Master page, it is inherited on every other page which I do not want (only want to set it once).
I can solve this by not having the pages as children of the Master document type, but then I lose the functionality of the SEO properties on every page.
Am I missing something obvious here? Is there any way to have the convenience of a master document type for common properties, as well as having a place to set global properties (footer text etc).
The master doctype does not have to be assigned to a node. so create a master with all your SEO, then a child of it for your website node, with just the footer text property - it only appears on that node, while all your SEO appear on every node.
personally i do not use this sort of structure for Document Types - i had problems once which took me ages to sort out and now i avoid it at all costs.
this allows me to set up meta content, page settings, standard content etc as mixins and then these can be very quickly added to the DocumentTypes for the site. The Mixins are easily updated and seems to be better than the parent-child relationship for DocTypes.
I do use a conventional parent-child structure for the Templates though.
Best practice for document type inheritance/tree structure
Currently I use this structure:
Content pages:
- Website (Master)
- Page 1 (Page)
- Page 2 (Page)
Document types:
- Master
- Page
The Master document type contains properties such as SEO meta tags, meta description, umbracoNaviHide etc - properties I want on every page of the site.
The problem I am having is when the master template I am using has an area of text I wish to be editable, for example a footer copyright text. Using my current tree structure if I add this copyright text as a property of the Master page, it is inherited on every other page which I do not want (only want to set it once).
I can solve this by not having the pages as children of the Master document type, but then I lose the functionality of the SEO properties on every page.
Am I missing something obvious here? Is there any way to have the convenience of a master document type for common properties, as well as having a place to set global properties (footer text etc).
Hi Matt
The master doctype does not have to be assigned to a node. so create a master with all your SEO, then a child of it for your website node, with just the footer text property - it only appears on that node, while all your SEO appear on every node.
Document types:
- Master
-Website
- Page
Hope it helps G
Sorry Matt, the post changed the alignment, website and page are two children of master.
G
Hi Matt
personally i do not use this sort of structure for Document Types - i had problems once which took me ages to sort out and now i avoid it at all costs.
I use the fantastic DocTypes MixIns package: http://our.umbraco.org/projects/backoffice-extensions/doctypemixins
this allows me to set up meta content, page settings, standard content etc as mixins and then these can be very quickly added to the DocumentTypes for the site. The Mixins are easily updated and seems to be better than the parent-child relationship for DocTypes.
I do use a conventional parent-child structure for the Templates though.
F
Ah, of course. *facepalm*
Much appreciated Gary, all working now!
is working on a reply...