Can you share your experiences in setting up medium to large scale websites?
I'm relatively new to Movable Type, and I've been evaluating 5.0 recently with the intent of using it more as a content management system than just a blogging platform. There appears to be a tremendous amount of flexibility in the way a single installation (system) can contain multiple websites, and where each website can contain multiple blogs. On top of it, each object (system, website, blog) can have their own template and custom field definitions, and user permissions. So it would appear there are numerous ways to setup your site structure. I am hoping to get some insight on how you have deployed MT for medium to large websites out in the field.
I'm interested in hearing about all experiences. But specifically, here are a few questions I have off the top of my head that hopefully will get this discussion started:
1. When is it appropriate to create another blog vs. create another website in a single install of MT? For example, if MT is used as a content management system for a large corporation with different departments, where each department may have unique local navigation and content structure needs, would each department be better suited for a new website or a new weblog?
2. What are the templating implications from setting up multiple blogs and websites? I understand each blog and website can have it's own theme and templates, but what if the intent is to have a unified brand and reusing as many common elements as possible? Every instance of a blog and website is creates another set of templates.
3. I see the power of custom fields on the blog entry level, and how the blogs can be used to store information with common data structures. But what are some scenarios where they are used at the page or folder level, and how can they be used along with the blog custom fields?
4. What's your strategy for using the folders? This seems to be the basis for URL structures, and I'm interesting in creating clean cruft free links.
5. In what type of situation would you have 2 installations of MT on the same server?
I will probably think of other questions if this thread becomes pretty active. Hoping for a good discussion. Thanks for reading!
Reported on Movable Type 5
Lotsa questions. Answering some.
Websites are new to MT -- some people wanted a portal page, other stuff to lead their homepages with blog headlines placed there.
Many large blog systems don't have one.
But if you want a completely different look and feel for different divisions, you have the option now of discrete websites.
Unified, one style, decide if you need a front page to them.
Inside, some blogs need categories, some run on tags. You can make index templates of blog entries tag="X" then delete them, having no permanent archives.
Custom fields can be made for mp3s, video (if you upload a player to your root directory), for specially formatted text that runs above the entry, below the title. (product info, book review author, publisher, price, pages info)
You can put a custom field where you want it, it's not part of the entry itself. Put it in the template above or below entrybody and other custom fields.
Movable Type is like Tinker Toys: Compatible pieces with which you can build what you want. It's very powerful that way.
Addressing part of your question #2: to achieve the unified global look, you can create some template modules as global template modules which would contain those elements you want to appear the same across all blogs.
You add the element or snippet of code that you want to appear the same across all blogs with a <mt:include module="module-name"> to the individual blog entry/page layout. When MT builds a page or blog entry for any individual blog within that website, it will look first in the blog's template directory for whatever template module you've included. If it doesn't find it there, it will go to the global level and look for it there.
Thus you can define bits of your layout that are common across all blogs on the website one time in a global template module and modify the look of an element for a particular blog that needs a variant.
Here's a further description of the shared global templates
http://www.movabletype.org/documentation/designer/shared-templates.html
Thanks Violet and shenews for your input!
Still looking for additional ideas and discussion from the community! I don't expect all of the questions addressed in any single response, but would definitely like to hear any responses or experiences you may have.
Those really are a lot of questions to answer lol. I am working on a "larger scale and functionality" site if you want to just see what you might be able to do. I made it so people can submit news, vote things up (like digg) and all sorts of other stuff. Its a fun hobby of mine to play around with this (and running obviously)
Site: http://www.allrunn.in/g
If you have any questions, just ask.
So Violet, I was giving what you mentioned about global templates a try, and I deleted the "Banner Footer" template module at the Blog level, assuming the website level template module of the same name would be used. By when I republished the blog, I received an error message that said the template was not found. Any ideas?
I don't know if I have what could be considered a large site or not. I started out with a web site of around 2,500 pages. I added wordpress and became quickly disatisfied with it and moved to MT.
Still moving pages from html to my MT 4.32 blog as I have time. I'll upgrade to MT 5.x when I get a chance.
It is about my game sessions in a first edition paper and pencil epg.
http://crestar.drivein-jim.net/crest_of_a_star/
If you add the banner footer template module at the system level, not the website level, the blog will publish normally. Though I agree that it seems logical to place it at the website level based on the way the documentation is written.
Thanks Violet, it works perfect now! You're right, the documentation could be clearer.
Hi,
I am stepping into this late, I don't even know why I did not see it on the main forums page.
1.
MT5 changes the game here. You would want to group "blogs" under a "site" that share the same domain name. This is different then how I approach structuring a MT4 install. Even if you have subdomains, such as department.domain.com, you would want them to be under the same "site" to be able to use the parent/child/sibling syntax new to MT5.
When you setup the blog root and publishing paths, MT5 now allows you to include an optional subdomain, which is a nice feature.
As for navigational structure and other similarities/differences, this would be handled by themes and template modules/widgets, so they could theoretically be any place in your install.
2.
I just read through the shared templates, and I notice they do refer to "blogs and sites" even though that doc was written for MT4.
It would be nice if the trickle down feature would search blog-site-global, maybe in the future.
You may be interested in this write up I did a while back about how I have setup our Network of sites, all running on one install of MT, well, mostly one install.
http://bgviewsnetwork.com/dev/2009/07/building-bg-views-network---part-1/
3. I use custom fields on Categories quite a bit. I have multiple sizes of a Category logo, for example. I use different Category logos on different templates, too, such as the main category index, the daily index, and even the entry template. For example see my different uses of the "BG News Sports" logo:
http://bgnews.com/sports/
http://bgnews.com/sports/list/
http://bgnews.com/sports/miller-wins-100th-mac-game-in-schellacking-of-emu/
4. Strategy for folders I do not think has changed from MT4 to MT5. Folders = Pages, content that is not date based. Of course that doesn't mean you can't use it for other uses. All my PDF archive pages are under a /pdf folder, for example:
http://bgnews.com/pdf/
http://bgnews.com/pdf/month/
http://bgnews.com/pdf/january-2008/
5. We run MT4 Pro under FastCGI, this keeps the application in memory and has many benefits. However some things don't do well in FastCGI. Byrn's Photo Gallery template set does not work under FastCGI because it changes the menus out on-the-fly. So galleries.bgnews.com is run from an entirely separate install. Besides something like that, there is not much reason to run more than one install.
My install of MT publishes to about 10 domains right now. This is handled with Apache aliases, you also have to give permissions of all doc root directories to the "main" account on the system. But once setup you could easily publish to any number of domains or subdomains, all from the same MT install.
Thanks so much Ken!! You answered all my questions!! This is really really helpful in getting me started. I will definitely read through your article.
Answering #2 in some detail:
Regarding strategies for sharing templates among blogs, this is the strategy that I've implemented for some Six Apart Services projects.
1. Create a blog with all the templates that you want to use.
2. Create a system-level template module for each of these templates. Prefix the name of each template as necessary for the current blog. eg. Forum: Main Index
3. In the blog use an mt:Include tag and include the system-level template module.
4. Once all template mtml has been moved to system-level template modules, then current blog can be used as a template to clone from when creating new blogs.
If it becomes necessary to make updates to the template sets of each blog, I suggest that you use one of the plugins or tools available to create a template set from your source blog and then apply this template set to the other blogs (and republish them) as necessary. Take a look at Byrne's export-ts script (the docs are quite good ;):
http://github.com/byrnereese/mt-tool-exportts/
This same process can be applied to websites as well.
Thanks for your tip Beau. I think I'm finally getting the hang of this.
Just another question for you guys ... I can't seem to find where some of the System's Global Templates are being used (which published page is using it). For example, the default installation comes with the Global Template "Footer". What is the purpose of this? The published files at the Website and Blog level are using the template "Banner Footer".
Thanks.
To follow up on my previous comment, it looks to me that the "System Overview's" default Global Template Modules are installed as placeholder templates, that are not used by default, but rather meant to be shared by creating templates of the same name at the Blog level. Am I understanding this correctly?