Enterprise CMS requirements checklist

A practical checklist of functional, security, integration, operational and compliance requirements for an enterprise CMS on Drupal or WordPress, with how to verify each and the questions that separate platforms.

On this page

How to use this enterprise CMS requirements checklist

A central digital team running a multi-site estate needs one agreed requirements list before it chooses Drupal, WordPress or a implementation partner. Without that list, platform debates turn into preferences, and the choice is made on features that matter less than site count, editor workflow, identity and patching. This checklist is organized by requirement. Each entry states what the requirement is, why it matters for a large web estate, and how to verify it, so you can score each candidate against the same evidence rather than against demos.

Treat the checklist as a shared document for the CISO, the CIO or head of digital, the accessibility lead and the editorial owners, not as a procurement form to hand to vendors. Work through the requirements in order of business risk: number of sites and languages, shared components, editorial workflow, SSO, accessibility conformance, search and integrations, hosting, CDN and the security update policy. Each one should end with a named owner and a yes, no or conditional answer. Confirm version status for any candidate directly with its maintainers and the release pages before scoring, because support windows change. For example, WordPress.org states that only the most recent release in a series is actively maintained, so a site on an older branch fails the patching requirement regardless of its features.

The same requirements apply whether you build in-house or hire a partner. A partner changes who does the work, not what must be true at go-live. DeployOpen implements, customizes, hardens, integrates and supports self-hosted open-source platforms inside your own infrastructure, and it runs security testing and prepares compliance evidence. It does not issue audit reports, attestations or certifications, and independent auditors and certification bodies make those determinations. Use the checklist to write the scope you give any partner, and ask each one to show how it will evidence every requirement you mark as mandatory.

Functional requirements to write down before vendor talks

This table lists the functional requirements an enterprise CMS buyer should write down before vendor conversations, with the cost or governance reason for each and a concrete check to run. Read it as a sequence: fix the site count, languages and editorial model first, because they drive most of the platform and hosting decisions that follow.

RequirementWhy it matters for cost and governanceVerification step
Number of sites, domains and languagesEach site, domain and language multiplies content models, templates, redirects and translation workflows; multi-site architecture is a cost driver whichever platform is chosen.Build a content inventory with site count, page count, languages and owners, then confirm the counts with the business units before scoping.
Shared components and design systemA shared component library cuts per-site build effort and keeps brand and accessibility consistent, but it needs a named owner and a release process.Ask the vendor to demo the same component rendered on two sites with different themes, using your own brand tokens.
Editorial roles and permissions per sectionGovernance fails when editors can publish outside their section; role design decides how many approval steps and admin accounts you carry.Write a role matrix (author, reviewer, publisher, site admin) and walk it through a live demo with two sample sections.
Moderation states, scheduled publishing and revision historyScheduled release and retained revisions support audit and rollback; how they are implemented depends on whether the workflow is core or added through modules or plugins (platform-dependent).Run a test article through draft, review, scheduled publish and rollback on a pilot site, and export the revision log.
Migration from end-of-life versionsDrupal 6 and 7 sites are rebuilt, not upgraded, and themes must be rebuilt; WordPress and Drupal current releases carry different support windows, so the migration scope sets much of the project cost (platform-dependent).Audit each existing site's version, PHP version, plugins or modules and theme, then map which items must be rebuilt or retired.
Single sign-on for editors and visitorsEditor SSO affects offboarding speed and access evidence; add-on modules or plugins may be needed and each adds maintenance (platform-dependent).Confirm the identity provider protocol and test sign-in and deprovisioning with a pilot group of editor accounts.
Accessibility conformance targetThe conformance level and testing method set the template, component and remediation effort; it must be written into acceptance criteria before build.Agree the target standard in writing, then test two representative page templates with an automated scan and manual assessment.
Search and integrations inventorySearch scope and integrations (CRM, analytics, forms, marketing tools) add interface work and ongoing maintenance; each external data flow needs an owner.List every integration with data direction, field list and owner, and confirm each one in a sandbox before contracts are signed.
Hosting, CDN and security update policyHosting boundary, patch window and CDN choice determine who carries security response; a written update policy prevents unpatched sites from going unnoticed.Ask the vendor to document a patch test, release and rollback procedure, then run one dry-run update on a staging copy.

Why licensing is not the requirement that decides the platform

Drupal and WordPress both carry no license fee for the core product, so the platform decision turns on requirements, hosting and support. Drupal core and contributed modules derived from it are licensed under GPL-2.0-or-later, and there is no paid edition of Drupal itself. WordPress is released under GPLv2 or later. Neither license tells you how many sites you can run, how fast security fixes reach you, or who answers when a module breaks, so those questions belong in the requirements phase, not the procurement cost line.

Version currency becomes a concrete requirement the moment you look at the release calendar. Drupal 11.4 was released the week of June 29, 2026, Drupal 12.0.0 is scheduled for the week of December 7, 2026, and Drupal 10 reaches end of life on December 9, 2026. A estate still on Drupal 10 therefore has a fixed deadline that falls weeks after the next major version ships. On the WordPress side, WordPress 7.1.3 was released October 6, 2026, and only the most recent release in the 7.1 series is actively maintained. Ask each candidate partner to name the version each site runs today, the date that version leaves support, and the upgrade path they will follow. For each of these, record the answer in your requirements document: the supported PHP and database versions for the target release, whether a bugfix or security patch can be applied without a full upgrade, and who in the estate owns the upgrade calendar. Because updates for both platforms depend on those choices, the team that will run the estate needs to confirm them before a build contract is signed.

Security requirements that enterprise CMS buyers verify

Enterprise CMS buyers verify security in layers: how editors sign in, how fast patches reach production, which runtime versions the platform still supports, and what the system records and stores. Each card below names a control to test in the proposed design and the question to put to the implementation partner.

SSO through SAML or OpenID Connect

Editor sign-in should run through the organization's identity provider so that joiners, leavers and MFA policy are managed in one place. On Drupal, the contributed samlauth module lets the site act as a SAML service provider, and its latest stable release, 8.x-3.14, supports Drupal 10.3 and later and Drupal 11. The contributed OpenID Connect module creates accounts on first sign-in and includes built-in clients for Okta, Google and generic OAuth 2.0. Confirm which protocol your identity provider uses, how accounts are deprovisioned, and whether the module version matches your Drupal core.

Role-based editor access

Large estates need permissions scoped by site, section and task, so a regional editor cannot publish to the corporate home page. Ask the partner to map each editorial role to explicit permissions, document who approves role changes, and run a quarterly review of accounts with publish rights. Confirm whether multi-site permissions are handled by core features, contributed modules or the WordPress multisite model, because each one changes the audit effort.

Security update policy and cadence

Drupal publishes security releases on the third Wednesday of the month, and bugfix releases on the first Wednesday. WordPress maintains only the most recent release in each series, and by default applies automatic updates to plugins and themes only when the WordPress.org API flags a critical fix. Ask for a written patch window, a staging test step, and who applies plugin and theme updates that WordPress does not apply automatically.

PHP and database version floors

The runtime sets how long a site stays patchable. Drupal 10 requires PHP 8.1 or later, Drupal 11 requires PHP 8.3 or later and Drupal 12 requires PHP 8.5 or later. WordPress recommends PHP 8.3 or greater with MariaDB 10.11 or greater or MySQL 8.0 or greater. Confirm the hosting image uses a supported PHP line, that the database version is on the vendor's support list, and who owns the upgrade when a floor rises.

Audit logging of content and access changes

Auditors ask who changed a published page, when, and from which account. Confirm that the platform records content revisions, role changes, failed sign-ins and configuration changes, and that logs are forwarded to a central store that editors cannot alter. Ask the partner which events are captured by core, which need a contributed module, and how long logs are retained in the hosting environment you choose.

Form data handling and secrets management

Forms often carry personal data and are a common route for data leaks. Ask where submissions are stored, who can export them, and whether they are sent to third-party add-ons. Secrets such as database credentials, SSO client secrets and API keys should sit in a secrets manager or environment variables, never in exported configuration or theme code. Confirm this with the partner before the design is approved.

Operational requirements: hosting, updates and support

This table sets out the hosting, update, monitoring and support requirements an enterprise CMS needs after launch, with the evidence to request and the question to ask for each. Use it to compare partner proposals and internal ownership before the platform goes live. The main takeaway is that a Drupal or WordPress estate stays secure only when someone owns the update calendar, module and theme patches, and restore testing from day one.

RequirementEvidence to requestQuestion to ask
Hosting boundary and regionArchitecture diagram showing where web nodes, databases, file storage, backups and logs sit, with the data center or cloud region namedWhich regions and providers hold site content, editor accounts and form submissions, and who can access them?
CDN and cachingWritten configuration of edge caching, cache purge rules and origin shielding, plus a list of third-party scripts the CDN servesHow are authenticated pages and forms excluded from caching, and how is a fast purge done during an incident?
Environments (dev, staging, production)Environment matrix showing separate databases, secrets and access rights, plus a documented process for copying content and configuration between themIs production content ever copied to lower environments, and how is personal data masked when it is?
Backup and restore testingBackup schedule, retention policy and the date and result of the most recent full restore test into a separate environmentWhen did the team last restore a complete site from backup, and how long did it take to return to service?
Core release calendarWritten update calendar that maps Drupal core bugfix and security releases to the first and third Wednesday of each month, and WordPress minor releases to the current maintained seriesHow does the calendar change when a Drupal major version reaches end of life, such as Drupal 10 on December 9, 2026?
Module, theme and plugin update ownershipRACI table naming who tests, approves and deploys contributed module, theme and plugin updates, and a list of every component with its current versionWho is accountable for a critical plugin patch that arrives outside the normal release window?
Monitoring and uptime alertingSample dashboard and alert list covering site availability, PHP and database errors, certificate expiry and failed scheduled publishingWhich alerts page a person out of hours, and who receives them?
Incident responseWritten runbook with severity levels, contact tree, rollback steps, and a record of the last tabletop or live incident exerciseWhat is the agreed response and communication path if a site is defaced or a form leaks data?

Migrating from Drupal 7 and Drupal 10 before end of life

Drupal 7 security support ended on January 5, 2025, and Drupal 6 and 7 sites cannot be updated in place to Drupal 10 or later. Each of these sites has to be migrated into a new site using the core Migrate, Migrate Drupal and Migrate Drupal UI modules or Drush, and the themes must be rebuilt because they cannot be migrated. Treat this as a rebuild of the presentation layer and a content and configuration move, not an upgrade. Start by inventorying every Drupal 7 site in the estate, including sites that a department runs outside the central team, and record which contributed modules, custom code and editor-facing features each one depends on, since many of those modules will need replacements in the new version.

Drupal 10 reaches end of life on December 9, 2026, according to the Drupal core release schedule, so any estate still on Drupal 10 needs a dated plan to move to a supported release before that date. Confirm the target version with your team and check the PHP requirements for it: Drupal 11 requires PHP 8.3 or later, and Drupal 12 requires PHP 8.5 or later, according to the Drupal.org PHP requirements page. A PHP upgrade can affect hosting, server images and custom modules, so confirm these against your own environment before you pick a target. If a Drupal 7 or 10 site cannot move in time, the Drupal Association's Extended Security Support Provider Program lists HeroDevs and Tag1 Consulting as certified vendors for sites in that position. Ask any provider for the scope of patches, the period covered and how fixes reach your environment, and treat that cost as recurring until the migration is complete.

Questions buyers ask before hiring help with an enterprise CMS

What drives the cost of enterprise CMS requirements gathering and build?

The cost follows the scope agreed in writing, and the largest drivers are the number of sites, languages, shared components, editorial workflows and integrations. Drupal and WordPress have no license fee, so the money goes to people: requirements analysis, information architecture, theme and design system work, content migration, integration builds, accessibility testing and hosting. Costs that recur include hosting, CDN, security updates, and support or retainers. When requesting a quote, ask for each component listed separately, which items are one-time and which recur, the assumed number of sites and languages, what is excluded, and who owns each deliverable. A quote built from a written scope can be compared line by line with other bids.

How long does an enterprise CMS migration take, and what sets the timeline?

The timeline depends on the volume and condition of content, the number of sites being moved, the complexity of templates and integrations, and how quickly decisions are made by the client team. Migrations from Drupal 6 or 7 are not simple upgrades: according to Drupal.org documentation, those sites are migrated into a new site and themes must be rebuilt. Ask the partner for a phased plan with milestones, a content inventory and redirect map, and a list of assumptions that would move the schedule. Any duration in a proposal should be tied to that written scope rather than presented as a fixed promise, and the partner should explain what happens if a dependency, such as an SSO connection or a data feed, is late.

What does the client team need to provide for a CMS project?

The client team needs to supply decisions and access, which are often the slowest parts of the project. Typical needs include a named owner for each site, editorial and approval roles, brand and design assets, access to existing platforms and content, identity provider details for SSO, and technical contacts for hosting, DNS, CDN and integrations. Editorial leads should review workflow states and permissions, and legal or compliance reviewers should define what content must be approved before publishing. Ask the partner to produce a responsibility matrix in the statement of work so that each decision has a named owner and a due point in the plan.

Can an internal team run an enterprise CMS requirements checklist alone?

Yes, an internal team can work through the checklist alone if it has the right mix of people: an editorial lead, a platform or infrastructure engineer, a security reviewer, an accessibility specialist and a product owner who can make trade-offs across sites. The checklist covers site and language counts, shared components, workflows, SSO, accessibility conformance, search, integrations, hosting and CDN, security update policy and end-of-life migration. Teams often need outside help for the parts they have not run before, such as multi-site architecture or a Drupal 7 migration. A useful test is whether the team can name the owner, the evidence and the decision date for every line in the checklist.

How should an enterprise CMS be tested for accessibility?

Accessibility testing combines automated scans, manual checks with assistive technology, and review by people who use these tools. Automated tools catch some issues, but they cannot confirm that a page works with a keyboard, a screen reader or zoom. The conformance target should be stated in the requirements, for example WCAG 2.1 Level AA for public sector estates, and tested on templates, components and representative content, not only the home page. For US state and local government web content, the ADA Title II rule requires WCAG 2.1 Level AA, and the interim final rule published April 20, 2026 set compliance dates of April 26, 2027 and April 26, 2028 depending on entity size. Ask the partner which tools, test scripts and browsers they use, how defects are tracked, and how testing is repeated at each release.

What evidence will a compliance assessor ask for from a CMS platform?

An assessor will usually ask for evidence that the controls described in the requirements actually operate. Typical items include the architecture and hosting boundary, access control and SSO configuration, role and permission matrices, change and release records, a documented security update policy with dates of applied patches, backup and restore test results, accessibility test reports and remediation logs, and records of who approved content for publication. DeployOpen prepares systems, controls and evidence for compliance assessments, but it does not issue audit reports, attestations or certifications, which independent auditors and certification bodies provide. Ask the partner to map each requirement to a named artifact and to confirm which of those artifacts the client owns after handover.

How do Drupal and WordPress differ on governance and security updates?

Both are GPL-licensed, so the difference lies in how they are governed and how their updates are delivered. Drupal 11 receives feature releases every six months, and according to the Drupal core release schedule, security releases are published on the third Wednesday of the month. Drupal 10 reaches end of life on December 9, 2026, so estates on that line need a migration plan. WordPress 7.1.3 was released on October 6, 2026, and WordPress.org states that only the most recent release in the 7.1 series is actively maintained, while the Security Team backports critical fixes to older versions as a courtesy. Governance differs too: Drupal offers strong built-in content moderation and multi-site patterns, while WordPress multisite and plugin-based workflows need more deliberate control. Ask the partner which version each site will run, how patches are tested and applied, and who is accountable when a contributed module or plugin is abandoned.

How to verify each requirement before signing a contract

Every requirement on this checklist should have a named verification method and a named owner before a contract is signed. Claims about multi-site governance, SSO or accessibility are cheap to make in a proposal and expensive to discover in production, so ask the implementation partner to prove each one on your estate. Start with a written content inventory and content model: list every site, language, content type, shared component and integration, and check that the partner's proposed model covers them without forcing editors into workarounds. Ask for the inventory to be reviewed by the content owners, not only by IT, because they will find the gaps first.

Next, run a proof of concept on one representative site. Choose a site that carries the hardest combination of your needs, such as a multilingual section, a form that posts to a CRM, and a template your design system must match. Require the partner to build the editorial workflow, the role mapping and the publishing path on that site, and to show a scheduled publish and a revision rollback during the demonstration. Pair this with a scripted accessibility test on a sample of templates, covering navigation, forms, media and dynamic components, and ask for the test results and the remediation log, not a summary score. Confirm which WCAG version and conformance level the test targets, because public-sector deadlines are tied to specific versions (see the ADA Title II web rule).

Verify identity and recovery in person or on a live call. Ask for a demo of SSO with your own identity provider, using a test tenant and a non-production account, and check how roles are assigned from group claims, how a leaver loses access, and what happens when the identity provider is unavailable. Then require a restore test from backup into a separate environment, timed and documented, including the database, the uploaded files and the configuration. Record every result in the scope document as an acceptance criterion with a pass condition, an evidence artifact and a sign-off owner. A requirement without a recorded test is an assumption, and assumptions should not survive into the statement of work.

Sequence the checklist into a selection and delivery plan

The sequence turns a requirements list into a platform choice, a written scope and a support model that fits the estate, so each decision is made once and tested before the build starts. It also shows the client what to supply at each stage.

  1. Inventory sites, languages and owners

    Start by listing every site, domain, language version, section owner and editor group in the estate, along with the systems each site connects to, such as SSO, search, forms and marketing tools. Your team supplies the list and access to analytics so traffic and content volume can be measured. The step is complete when the inventory is signed off by the web governance owner and every site has a named business owner and a current PHP or database version recorded for any Drupal or WordPress installs.

  2. Rank requirements as must-have or later

    Sort the checklist into must-have requirements that block launch, such as accessibility conformance, SSO, audit trails for published content and a supported security update path, and requirements that can follow in a later phase, such as a visual page builder or advanced personalization. Stakeholders from editorial, legal, security and accessibility sign off on the split together. The output is a ranked register that names the decision owner for each item, so no requirement is left without a clear acceptance test.

  3. Shortlist platforms against the ranked register

    Compare the platforms that can meet the must-have items, including Drupal and WordPress for managed multi-site estates and, where content is headless, the self-hosted options covered in the sibling content groups. Check each candidate against the version lifecycle, the license terms, and the hosting model your organization can run. Your team confirms the shortlist with procurement and security. The step ends with a written comparison that records which claims were verified by a vendor document and which still need confirmation.

  4. Run a proof of concept on real content

    Build a limited proof of concept on the shortlisted platform using a representative site, a sample of real templates, one SSO flow, one integration and the editorial workflow your teams actually use. Accessibility testing with assistive technology and a security review of the configuration run during this phase. Your team provides test accounts, sample content and a named reviewer for each area. The step closes when the must-have items pass against written test cases, and any gap is either fixed in the design or moved into the risk log with an owner.

  5. Agree fixed scope and acceptance criteria in writing

    Convert the proof of concept findings into a written scope with deliverables, exclusions, responsibilities, acceptance criteria for each must-have requirement, and the change process for anything added later. Most engagements are fixed-scope, so the agreement states what is included and what is not before work starts. Your procurement and legal teams review the document and sign it. The step is complete when each acceptance criterion names the evidence that will prove it, such as test reports, configuration exports or audit logs.

  6. Build, migrate and test against the criteria

    Build the platform, migrate content and rebuild themes where the source version cannot be upgraded in place, then test each site against the agreed criteria before cutover. Redirect maps, editor permissions and integration tests are verified in a staging environment that matches production as closely as your hosting allows. Your team performs user acceptance testing and signs the release checklist. The step is done when every must-have item has a passing test report and the rollback plan has been rehearsed.

  7. Set the post-launch update and support model

    Before go-live, agree who applies core, module and plugin updates, how security releases are scheduled against the platform's published release cadence, who monitors the advisories, and who answers editor and incident tickets. Record the hosting, CDN and backup responsibilities in the same document. Ongoing support, upgrades and continuous testing are available as retainers, so the choice between a retainer and internal staff is made here. The sequence ends with a signed run book that names the owner of each recurring task and the evidence it produces each month.

The questions that separate enterprise CMS platforms and partners

The most useful question to put to any Drupal or WordPress partner is how multi-site governance is enforced, not whether it is supported. Ask who can create a new site, which shared components sit in the design system and who can override them, and where those rules live: in code review, in a shared configuration repository, or in editor habit. A strong answer names the controls. For Drupal multisite or a shared codebase, expect a description of locked components, a process for theme changes, and a record of which sites run which module versions. For WordPress, expect the same questions answered for plugins, which are the usual source of drift across a network. If the answer depends on editors remembering the rules, the governance is not enforced.

Ask how accessibility is tested inside the release process, not after launch. A good answer places automated checks against WCAG 2.1 Level AA in the build pipeline, lists which templates get manual testing with assistive technology, and says who signs off a release when a check fails. Ask whether the partner will hand over the test results and remediation log as evidence, because that record is what auditors and public-sector buyers will request. Be wary of any answer that relies on an overlay product to close the gap. Similarly, ask how SSO is added and tested: a credible partner describes the protocol (for example, SAML through the contributed samlauth module, or OpenID Connect), how editor roles map from identity groups, how account creation on first sign-in is controlled, and what happens to access when someone leaves. Ask to see a test plan that covers failed logins, expired sessions and deprovisioning.

Security releases are the question that most often reveals whether a partner runs a program or a project. Ask how patches are applied on a fixed calendar, who watches the security advisories for core and contributed modules or plugins, how a patch is tested on a staging copy before production, and how long the window is from advisory to deployment. For Drupal, the release cadence is published, with security releases on the third Wednesday of the month, so a good answer maps its process to that schedule. Ask how Drupal 10 sites move before end of life: the Drupal core release schedule lists Drupal 10 end of life on December 9, 2026, and the answer should show a dated migration plan to Drupal 11 or 12, not a promise to upgrade later. Finally, ask what the hosting boundary is and what backup restore evidence looks like. Request a documented restore test with its date, the recovery time measured, the scope of what was restored, and who approved it. Confirm with the partner which data stays in your accounts and which third-party services receive form submissions or analytics.

How DeployOpen scopes, delivers and supports an enterprise CMS

DeployOpen plans, implements, customizes, integrates, hardens, documents and supports self-hosted open-source platforms inside your own cloud accounts, data centers or air-gapped networks. For an enterprise CMS requirements checklist, that means turning your site inventory, language needs, SSO model and accessibility targets into a written scope before any build starts.

How we scope

  • Inventory of sites, languages, domains and shared components agreed in writing before work starts
  • Editorial workflow, role and permission map documented for each section owner
  • Accessibility conformance target, SSO approach and integration list recorded in the scope
  • Engagements are fixed-scope, with deliverables and timelines confirmed in writing

How we build

  • Platform configured in your environment, including hosting, CDN and search components as scoped
  • Shared design system and templates built once, then reused across participating sites
  • Accessibility testing and remediation performed during build, not only at launch
  • Integrations with identity, analytics and marketing tools implemented against agreed data flows

How we hand over

  • Architecture, configuration and runbook documentation delivered to your platform and editorial teams
  • Security update procedure and release checklist written for your own approval process
  • Evidence for accessibility, access control and change management organized for your auditors
  • Knowledge transfer sessions scheduled as part of the written scope

How we support

  • Ongoing support, upgrades and continuous testing available as a retainer after handover
  • Core and module updates tracked against the vendor's published release and security schedule
  • Backup, restore and hosting checks performed as defined in the support agreement
  • Confirm response expectations and coverage hours in the retainer before signing

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.