I'm building my first Umbraco-based site, and wanted to get some feedback on my sense of Umbraco's design philosophy.
Each page on my site is built around a pretty standard TopMenu, SidebarMenu, ContentBlock and Footer layout (there's also a banner area across the very top, but it simply displays static content so I'm ignoring it here).
It seems to me that what I should do is create a DocumentType for each of these content areas. For example, I could create a TopMenuType which would define the properties I want to display for each item linked to an entry in the TopMenu area. That would then let me write a macro which grabbed all the instances of TopMenuTypes, extract a previously-defined "Link" property and create the TopMenu on the fly. That way, when I add a new instance of a TopMenuType it will automatically show up in the TopMenu area throughout the site. I could do something similar for the SidebarMenu and the Footer.
The ContentBlock is a little different in that it's something that occurs on many different types, so it's probably just a defined property on the instances which result in pages being displayed.
Is this a reasonable approach to take in designing an Umbraco site? What other ways of thinking about DocumentTypes and site structure should I be considering in my design?
first, for the record... each site maker has a diffrent approach and style... so i would guess there is no "right" answer here... but since you are asking for others to offer their approach, here goes nothin'
typically, what i do is take a step back and look at the various 'content' areas i will need... taking the 'visual layout' completely out of the equation at this point.
i typically have a Master DocType which contains various content properties that would appear on virtually every page... my Master has a tab called SEO for example, for meta data. pageHeading, etc.
I also have a navigation tab on that Master that contains items like navText, toolTip, umbracoUrlAlias, umbracoNaviHide, hideNodesBelow, etc.
Finally, i have been adding a Content Tab to this master docType too... contains fields like pageHeading, bodyText and pageImage...
This way, i don't have to replicate these items on every other docType...
Next, I often have a HomePage docType [which refrences the Master]... which contains a tab for Site Config Data -- like companyName, siteName, addressInfo, YearFounded, etc.
Then I create a BasicPage [only add stuff like relatedDocs, etc. as needed] -- i mostly use this to have a docType that can be explicity created under the type of HomePage...
okay, so with these basic docTypes... i can create most of my site structure in the content area... of course you might want to create specialty docTypes of newsHome, etc. -- this all depends on how you want to create the experience for your end users -- meaning editors.. not visitors.
NOW... we can go to the visual presentation layer -- TEMPLATES...
you can create and allow many templates to be utilized by one doctype... and also nest templates so you dont have to keep writing the same markup OVER AND OVER again...
for example... i allow a couple to a few templates for my basicPage docType... one with imageLeft, imageRight, etc. to give your editors options on how to present your content. I also have templates specifically for listing sub-content or specialty content... some designers allow editors to insert macors, etc. into the RTE or pick macros for display on the page... which is totally COOL...i just don't typically have editors that can really swallow that level of complexity :)
hopefully that give you a bit of an overview and shows that you don't have to really have that many docTypes if you don't want to... you could add tabs to one docType for areas such as left sidebar, etc. and place properties on each to allow for varied content from page to page.
Document Types and Site Structure
I'm building my first Umbraco-based site, and wanted to get some feedback on my sense of Umbraco's design philosophy.
Each page on my site is built around a pretty standard TopMenu, SidebarMenu, ContentBlock and Footer layout (there's also a banner area across the very top, but it simply displays static content so I'm ignoring it here).
It seems to me that what I should do is create a DocumentType for each of these content areas. For example, I could create a TopMenuType which would define the properties I want to display for each item linked to an entry in the TopMenu area. That would then let me write a macro which grabbed all the instances of TopMenuTypes, extract a previously-defined "Link" property and create the TopMenu on the fly. That way, when I add a new instance of a TopMenuType it will automatically show up in the TopMenu area throughout the site. I could do something similar for the SidebarMenu and the Footer.
The ContentBlock is a little different in that it's something that occurs on many different types, so it's probably just a defined property on the instances which result in pages being displayed.
Is this a reasonable approach to take in designing an Umbraco site? What other ways of thinking about DocumentTypes and site structure should I be considering in my design?
- Mark
first, for the record... each site maker has a diffrent approach and style... so i would guess there is no "right" answer here... but since you are asking for others to offer their approach, here goes nothin'
typically, what i do is take a step back and look at the various 'content' areas i will need... taking the 'visual layout' completely out of the equation at this point.
i typically have a Master DocType which contains various content properties that would appear on virtually every page... my Master has a tab called SEO for example, for meta data. pageHeading, etc.
I also have a navigation tab on that Master that contains items like navText, toolTip, umbracoUrlAlias, umbracoNaviHide, hideNodesBelow, etc.
Finally, i have been adding a Content Tab to this master docType too... contains fields like pageHeading, bodyText and pageImage...
This way, i don't have to replicate these items on every other docType...
Next, I often have a HomePage docType [which refrences the Master]... which contains a tab for Site Config Data -- like companyName, siteName, addressInfo, YearFounded, etc.
Then I create a BasicPage [only add stuff like relatedDocs, etc. as needed] -- i mostly use this to have a docType that can be explicity created under the type of HomePage...
okay, so with these basic docTypes... i can create most of my site structure in the content area... of course you might want to create specialty docTypes of newsHome, etc. -- this all depends on how you want to create the experience for your end users -- meaning editors.. not visitors.
NOW... we can go to the visual presentation layer -- TEMPLATES...
you can create and allow many templates to be utilized by one doctype... and also nest templates so you dont have to keep writing the same markup OVER AND OVER again...
for example... i allow a couple to a few templates for my basicPage docType... one with imageLeft, imageRight, etc. to give your editors options on how to present your content. I also have templates specifically for listing sub-content or specialty content... some designers allow editors to insert macors, etc. into the RTE or pick macros for display on the page... which is totally COOL...i just don't typically have editors that can really swallow that level of complexity :)
hopefully that give you a bit of an overview and shows that you don't have to really have that many docTypes if you don't want to... you could add tabs to one docType for areas such as left sidebar, etc. and place properties on each to allow for varied content from page to page.
keep asking questions... we are all here to help!
Thanks, that's very helpful, and clarifies my [currently low :)] level of understanding.
Thank you for your help with that. For a starter the design-ideas for Umbraco are not easy to understand. Michael Baarz
is working on a reply...