CiviCRM follows the Drupal community's decisions around which versions of Drupal receive support. Drupal 8 is no longer supported, but Drupal 7 and Drupal 9 are supported. Drupal 10's release date is targeted for December 2022 (as of August 2022), and the CiviCRM community anticipates providing support for it around the time of its release.
CiviCRM follows the Drupal community's decisions around which versions of Drupal receive support. Drupal 8 is no longer supported, but Drupal 7, Drupal 9 and Drupal 10 are supported.
This guide covers standard installation of CiviCRM on an existing Drupal site. Before starting, you must have completed these tasks:
This guide covers standard installation of CiviCRM on an existing Drupal site. Before starting, you must have completed these tasks:
1. [Reviewed the CiviCRM requirements](../general/requirements.md)
1. [Reviewed the CiviCRM requirements](../general/requirements.md)
## Get the code for Drupal 10 {:#drupal10-download}
This section is currently lacking a detailed description for Drupal 10. You can help as a open source community effort to fill this section by creating a [merge request](https://lab.civicrm.org/documentation/docs/installation/-/merge_requests).
See GitLab Status for plannig: [installation-19](https://lab.civicrm.org/documentation/docs/installation/-/issues/19)
Nevertheless you can try to adapt the Drupal 9 chapter in order to install Drupal 10.
## Get the code for Drupal 9 {:#drupal9-download}
## Get the code for Drupal 9 {:#drupal9-download}
!!! warning "Drupal 9 reaches end of life status soon"
If you start implementing a new CiviCRM environment you might want to start with Drupal 10 or a different [CMS](../planning/cms.md). Check out Drupal 9 [end of life status](https://www.drupal.org/docs/understanding-drupal/drupal-9-release-date-and-what-it-means/how-long-will-drupal-9-be-supported)
Drupal 9 sites are typically administered with [Composer](https://www.getcomposer.org). Composer is a *dependency management* tool which can add, upgrade, and remove software *packages* for your site.
Drupal 9 sites are typically administered with [Composer](https://www.getcomposer.org). Composer is a *dependency management* tool which can add, upgrade, and remove software *packages* for your site.
CiviCRM is published as a suite of related packages. Our goal is to use Composer to add CiviCRM's packages to the D9 site.
CiviCRM is published as a suite of related packages. Our goal is to use Composer to add CiviCRM's packages to the D9 site.
@@ -4,7 +4,8 @@ CiviCRM works with several popular open source Content Management Systems (CMS).
...
@@ -4,7 +4,8 @@ CiviCRM works with several popular open source Content Management Systems (CMS).
* Backdrop CMS
* Backdrop CMS
* Drupal 7
* Drupal 7
* Drupal 9
* Drupal 9 (Reaches end of life status [soon](https://www.drupal.org/docs/understanding-drupal/drupal-9-release-date-and-what-it-means/how-long-will-drupal-9-be-supported))
* Drupal 10
* Joomla
* Joomla
* WordPress
* WordPress
...
@@ -29,8 +30,8 @@ Support for running CiviCRM with WordPress was added in 2012, which allowed Word
...
@@ -29,8 +30,8 @@ Support for running CiviCRM with WordPress was added in 2012, which allowed Word
Broadly there are some differences which arise because of distinctive features/norms in each CMS community, e.g.
Broadly there are some differences which arise because of distinctive features/norms in each CMS community, e.g.
* In WordPress, it's pretty common to embed content in your web-pages using short-codes. CiviCRM has several short-codes in WP.
* In WordPress, it's pretty common to embed content in your web-pages using short-codes. CiviCRM has several short-codes in WP.
* In Backdrop CMS/Drupal 7/Drupal 9, it's pretty common to embed content in your web-pages using blocks. CiviCRM has several blocks in Drupal.
* In Backdrop CMS/Drupal 7/Drupal 9/Drupal 10, it's pretty common to embed content in your web-pages using blocks. CiviCRM has several blocks in Drupal.
* In Backdrop CMS/Drupal 7/Drupal 9, CiviCRM makes use of the CMS's "roles" and "permissions" using the CMS's interfaces and approaches, and there are modules to synchronize CiviCRM groups and membership types to them.
* In Backdrop CMS/Drupal 7/Drupal 9/Drupal 10, CiviCRM makes use of the CMS's "roles" and "permissions" using the CMS's interfaces and approaches, and there are modules to synchronize CiviCRM groups and membership types to them.
* In Joomla/WordPress, "roles" and "permissions" can also be managed using the CMS's interfaces and approaches, and there are plugins to synchronize groups and membership types to them.
* In Joomla/WordPress, "roles" and "permissions" can also be managed using the CMS's interfaces and approaches, and there are plugins to synchronize groups and membership types to them.
## Installation Process
## Installation Process
...
@@ -58,7 +59,7 @@ You may also choose a CMS because you already know how to use it or it is alread
...
@@ -58,7 +59,7 @@ You may also choose a CMS because you already know how to use it or it is alread
**Drupal** is the most flexible and has the best integration with CiviCRM. If you have complex CMS needs or envisage a lot of interaction between users on your website and your CRM, then Drupal might be the CMS for you. The main negative is that this flexibility makes it harder for new site builders to get to grips with.
**Drupal** is the most flexible and has the best integration with CiviCRM. If you have complex CMS needs or envisage a lot of interaction between users on your website and your CRM, then Drupal might be the CMS for you. The main negative is that this flexibility makes it harder for new site builders to get to grips with.
**Backdrop CMS** is very similar to Drupal 7, with many improvements making it slick and lightweight. It started as a fork (that is, a copy) of Drupal 7, aimed at users for whom Drupal 9 was likely to be too complex either to use, or to migrate to from Drupal 7. Drupal 7 modules and themes require modifications to work with Backdrop CMS, though many have already been ported and are actively maintained.
**Backdrop CMS** is very similar to Drupal 7, with many improvements making it slick and lightweight. It started as a fork (that is, a copy) of Drupal 7, aimed at users for whom Drupal 9 or Drupal 10 was likely to be too complex either to use, or to migrate to from Drupal 7. Drupal 7 modules and themes require modifications to work with Backdrop CMS, though many have already been ported and are actively maintained.
**Joomla** isn't as popular as WordPress, though it is more popular than Drupal. Joomla is easier to learn than Drupal. The amount of integration available is lower than then when using Drupal.
**Joomla** isn't as popular as WordPress, though it is more popular than Drupal. Joomla is easier to learn than Drupal. The amount of integration available is lower than then when using Drupal.