diff --git a/docs/en/_images/copy-page-to-subsite.jpg b/docs/en/_images/copy-page-to-subsite.jpg new file mode 100644 index 0000000..6bed78b Binary files /dev/null and b/docs/en/_images/copy-page-to-subsite.jpg differ diff --git a/docs/en/_images/disallow-page-types-result.png b/docs/en/_images/disallow-page-types-result.png new file mode 100644 index 0000000..59b7a12 Binary files /dev/null and b/docs/en/_images/disallow-page-types-result.png differ diff --git a/docs/en/_images/disallow-page-types.png b/docs/en/_images/disallow-page-types.png new file mode 100644 index 0000000..4bcc688 Binary files /dev/null and b/docs/en/_images/disallow-page-types.png differ diff --git a/docs/en/index.md b/docs/en/index.md index ea5a361..2a23213 100644 --- a/docs/en/index.md +++ b/docs/en/index.md @@ -1,10 +1,31 @@ # Subsites -The SilverStripe subsites module allows you to manage multiple related sites through a single CMS interface. Because -all sites run on a single installation of SilverStripe, they can share users, content and assets. They can all use the -same templates, or each use different ones. +The SilverStripe subsites module allows you to manage multiple related sites through a single CMS interface. Because all sites run on a single installation of SilverStripe, they can share users, content and assets. +They can all use the same templates, or each use different ones. -This document assumes that you have full admin rights for your site. +A useful way to think of its use is where you have a business with a global headquarters and four branches in various countries. The subsites module allows the five offices to use a single SilverStripe installation, and have information from the headquarters flow down into the branches. The branches can have separate users/admins, and information that is individual. The website theme (the look and feel of the website) can also be completely different. - 1. [Setting up subsites](set_up) - 1. [Working with subsites](working_with) \ No newline at end of file +## Features: + * Each subsite appears as a standalone website from a users prospective + * No need to duplicate existing code as all subsites use the same codebase as the main site + * You can set individual permissions on each subsite domain name + * Ability to copy a page and its content from the main site into a subsite + * Create translations of subsite pages + * Schedule the publishing of subsite pages + * The database is shared between subsites (meaning duplicating content is easy) + +## Limitations: + * Each subsite domain name has to be set up on the server first, and DNS records need to be updated as appropriate. + * A subsite cannot use a different codebase as the main site, they are intrinsically tied + * However, you can remove page types from a subsite when creating the subsite - [see the setup documentation for further details](set_up.md) + * The only code a developer can edit between subsites is the theme + * All subsites run in the same process space and data set. Therefore if an outage affects one subsite it will affect all subsites, and if bad code or hardware corrupts one subsite's data, it's very likely that it has corrupted all subsite data. It is not currently possible to backup or restore the data from a single subsite. On the other hand, when recovering from a disaster it's much easier to bring up a new copy of a single environment with 100 subsites than it is to bring up 100 environments. This principle applies to application error, security vulnerabilities, or high levels of traffic - this will be experienced across all subsites. + * It is awkward (but not impossible) to have separate teams of developers working on different subsites - primarily because of the level of collaboration needed. It is more suited to the same group of developers being responsible for all of the subsites. + +If more isolation of code, security, or performance is needed, then consider running multiple separate installations (e.g. on separate servers). + +*This document assumes that you have full admin rights for your site.* + +## Further Documentation + 1. [Setting up subsites](set_up.md) + 2. [Working with subsites](working_with.md) \ No newline at end of file diff --git a/docs/en/set_up.md b/docs/en/set_up.md index dea7cf8..2971253 100644 --- a/docs/en/set_up.md +++ b/docs/en/set_up.md @@ -58,4 +58,13 @@ template. When you create a new subsite, you can now choose to Copy structure from your template. All your pages, files and images will be copied over to your new subsite. -![Group subsites dropdown](_images/copy-structure.jpg) \ No newline at end of file +![Copy subsite structure](_images/copy-structure.jpg) + +## Disable particular page types from a subsite +Sometimes, you will have two or more websites that are very similar, but have some small differences. For example, a head office and its 3 satellite offices may have 4 subsites, but only the head office site will have a "Company News" section on the site. In this instance, you can still use the subsites module, and use the 'Disallow page types' ability to remove certain page types from being created on subsites. + +To do this, you create a subsite as you normally would, and when editing the subsite, click on the 'Disallow page types?' link. Then, select the page types you wish to remove from this subsite. Note that this process is exactly the same when editing an existing subsite, you just select the subsite you want to remove page types from instead of creating a new subsite. +![Disallow page types screenshot](_images/disallow-page-types.png) + +Now, whenever someone wants to create a new page on the subsite (the 'London Branch' subsite in this case), they will not be able to select the page types you've selected, as you can see below. Note that this restriction doesn't affect full administrators, and admins needs to login to the subsite domain directly (e.g. http://london.site.com/admin/, not http://site.com/admin). +![Disallow page types result screenshot](_images/disallow-page-types-result.png) \ No newline at end of file diff --git a/docs/en/working_with.md b/docs/en/working_with.md index ef577d8..19e32ac 100644 --- a/docs/en/working_with.md +++ b/docs/en/working_with.md @@ -13,4 +13,16 @@ Virtual Page**. Pick the subsite from which you want to pull the content, then s pages, your **Subsites Virtual Page** will display the content from the original page and get updated automatically if the original content changes. -![Subsites virtual page](_images/subsites-virtual-page.jpg) \ No newline at end of file +![Subsites virtual page](_images/subsites-virtual-page.jpg) + +## Duplicating pages from the main site + +If you have an existing page on the main site that you would like to copy to a subsite, all you need to do is: + + * Visit the page in the site tree and scroll down to the 'Copy page to subsite' dropdown + * Choose the subsite you wish to copy the page to + * Press the 'Copy' button + +![Subsites copy page from main site](_images/copy-page-to-subsite.jpg) + +You will now be directed to the chosen subsite where the page will now be duplicated in the site tree \ No newline at end of file