django CMS blog provides full support for multisite setups.
To enabled basic multisite add
BLOG_MULTISITE = True to the project settings.
Each blog post can be assigned to none, one or more sites: if no site is selected, then it’s visible on all sites. All users with permission on the blog can manage all the blog posts, whichever the sites are.
Multisite permissions allow to restrict users to only manage the blog posts for the sites they are enabled to
To implement the multisite permissions API, you must add a
get_sites method on
the user model which returns a queryset of sites the user is allowed to add posts to.
class CustomUser(AbstractUser): sites = models.ManyToManyField('sites.Site') def get_sites(self): return self.sites