Web Studio is here! An enhanced experience to make it easier to create, preview, and collaborate on your website contentLearn More
Thinking of using Agility to power multiple websites? With our flexibility, we make it easy to architect content models that can be used to power multiple websites.
Depending on the nature of your organization, your branding, and your content itself, you have options for how you deploy your websites.
In most cases, you'll find that separate Sitemaps and Instances are what will work best for you.
An Instance in Agility can have multiple Sitemaps. Each Sitemap can have different pages but utilize the same underlying architecture such as page templates, page modules, and content models. They are designed to support multi-tenancy where each sitemap has its own unique domain.
Some organizations utilize multiple Page Management Sitemaps in Agility to separate their sub-brands or microsites. They can easily reuse content and assets from the primary site on the additional sites.
Since sitemaps allow you to manage multiple websites within the same Agility instance, you should take some care to differentiate what Content (and their Models) and Page Modules are applicable to each sitemap.
For example, if you have two sitemaps, each sitemap can use the same Page Modules and have access to the same Content. This has some great advantages in that you can re-use Page Modules and Content Models across all sitemaps.
However, there will likely be cases where some Content (and/or its underlying Model) or Page Modules are only intended for a specific sitemap. It's important to label these dependencies so that your editors are aware that certain content or page modules are only intended to be used with a specific sitemap.
If you are developing a page module that can be used across any sitemap, consider using a naming convention like Global {Page Module Title}
(i.e. "Global Slider"). The word Global denotes that this Page Module can be safely used anywhere.
Respectively, if you have a Page Module that is designed to only be used on a specific sitemap, you should pre-pend it with a word references the sitemap. For example "Site B Slider".
Content Models are used to initialize a content list or item. Similar to Page Modules, if Content Model can be safely re-used, it should be pre-pended with a word like Global (i.e. "Global Articles").
Where Content Models are a unique, is when you initialize a content list or item with it, you can set the name of the list/item. You may have a Global Content Model, however your list of content that you initialize off it, could be specific to a sitemap. You could name your list "Site B Articles".
Pages are already organized by sitemaps, but Content in Agility is meant to be globally available to all your pages. If you are creating Content that you know is specific to a sitemap, consider creating folders in your Content (area) for each sitemap and place the appropriate content within it.
For example:
If you are looking for a clearer separation of concerns, look at using Multiple Instances to manage your websites.
An instance represents your Agility project.
Agility allows you to manage multiple instances that are completely separate from each other in terms of the content, assets and editor team. In a multi-instance scenario, organizations can maintain a one-to-one ratio between an instance and a website. The security and workflow for each instance can be completely different from the next.
In many cases, it makes sense to have multiple instances where there is also a primary instance that acts as the Content Hub for all content that's shared everywhere. You can read more about how to build a Content Hub.
Page folders are ways to organize a set of pages within one of your Channels.
This allows you to create folders in your sitemap to represent each site you have. This model works great for micro-sites when all your pages can live on a single domain and is powered by the same website code.
While not designed for this purpose, you can utilize an additional Language locale to represent a new site.
This works well for when you have pages that will be identical in layout across all your sites. Simply initialize the content in the other language and you can pull that into your website.
An Agility Instance grants access to users. This is managed by admins. If a user has access to an instance, further permissions may be applied to that user so that they either can or cannot modify specific content lists, pages, or page modules.
It's important to note that users that have access to an instance can see all content and pages listed in the CMS, but depending on their permissions may not have access to view or edit them. If you need to separate different teams from seeing each other's content, consider using separate instances.
Sitemaps | Page Folders | Locales | Separate Instances | |
---|---|---|---|---|
Site Creation | Add a new Sitemap, its Pages and Initialize Content | Create a new Page Folder in your Sitemap, its Pages and Initialize its Content | Create a new Locale, then Initialize Pages and Content for that language | Create a new Instance, create Content Models, Initialize Pages and Content |
Flexible Sitemaps per Site | Yes | Yes | No | Yes |
Shared Content grouped by Site | Yes | Yes | No | No, each Instance has its own Content |
Security Applied per Site | Yes - via User Permissions | Yes - via User Permissions | No | Yes - via user access per Instance |
Share same Website Deployment or Host | Yes | Yes | Yes | No - must be a separate deployment |
Share same Page/Module/Content | Yes | Yes | Yes | No |
Reference Global or site-specific Content across sites | Yes | Yes | Custom - logic must be written to pull from specific locales | Custom - can only be accessed using Content Fetch API |
Content API is Secured by Sitemap | No - the API is able to query all Content | No - the API is able to query all Content | No - the API is able to query all Content | Yes - each site has its own API permissions |
Domain Mapping to Sitemap | Yes - each Sitemap is mapped to its own list of Domains | Custom - logic needed to rewrite paths without the folder name | Custom | Yes |
Dedicated Preview for each Sitemap | Yes - each Sitemap its own Preview URL | Custom - logic needs to redirect to a Preview URL to the appropriate site domain and rewrite path | Yes | Yes |
URL Redirections | Yes | Custom - logic required to handle rewritten paths without the site folder name | Yes | Yes |
Support Editor URL Page Picker | Yes | Custom - logic needed on the site to rewrite URLs used by editors to exclude the folder path | Yes | Yes |
Licensing Impact | Yes - Sitemaps can be added to subscriptions for $100 | N/A | N/A | Yes - requires a new subscription plan per instance |