Answers.Body: <p>Migrating Drupal/CiviCRM has really improved during my time with the platform. Today, there are three primary steps you'll need to complete to migrate your Drupal 7 -&gt; Drupal 10 CiviCRM site.</p>
  <p>As has been mentioned, CiviCRM doesn't care much whether it's on Drupal 7 or 10 but it's a bit picky about the version of CiviCRM so if your Drupal 7 site is on 5.74.4 then to prevent hiccups, the Drupal 10 site ought to be using the same version.</p>
  <p>My process is as follows and requires that the Drupal migration be complete or mostly complete. For instance, you'll definitely want the users and roles to have been migrated. In the following workflow example I am migrating a Drupal 7 site with two databases (Drupal &amp; CiviCRM) into a Drupal 10 site with a single database for Drupal &amp; CiviCRM.</p>
  <p>Install the clean CiviCRM instance into your Drupal site, then:</p>
  <ol>
  <li>Copy the CiviCRM extensions from the Drupal 7 site to the Drupal 10 site.</li>
  <li>Import the Drupal 7 CiviCRM database structure without data into your clean CiviCRM instance (only CiviCRM structure). When I export my data, I export it with foreign key checks disabled.</li>
  <li>Import the CiviCRM data. I tend to not import any of the cache table data.</li>
  </ol>
  <p>Once you're done, take CiviCRM for a test drive and check the status page to make sure everything is running correctly.</p>
  <p>I usually clear caches and reset/update paths. I make sure that my extensions directory is named correctly for the new installation. For instance my old site used /sites/default/files/civicrm/extensions and my new site uses /sites/default/files/civicrm/ext.</p>
  <p>I also synch users to contacts and you'll need the <a href="https://www.drupal.org/project/civicrm_entity" rel="noreferrer">CiviCRM Entity</a> module to allow Drupal to access CiviCRM data for views.</p>
  <p>@petednz - fuzion mentioned in the comments that extra effort and attention will be required to migrate civicrm-related Views and Webforms into the Drupal 10 site from the Drupal 7 site. I have yet to find a good method to migrate views from D7 to D10, so I will build them from scratch on every migration I do. That way I know the view isn't flawed in some form or other.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-06-28T20:30:29.633Z
Answers.Text: Since this may become the top answer I just want to add a comment about extra effort required to migrate civicrm-related Views and Webforms since both need special attention if they exist on the D7 site
Answers.UserDisplayName: petednz - fuzion
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-06-28T22:29:52.520Z
Answers.Text: Good point Peter. I'll edit the answer to add that.
Answers.UserDisplayName: Andrew Wasson
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-06-27T23:16:03.927Z
Answers.LastActivityDate: 2024-06-28T22:35:06.670Z
Answers.LastEditDate: 2024-06-28T22:35:06.670Z
Answers.UserDisplayName: Andrew Wasson
Answers.Body: <p>Civi by itself doesn't care too much if it's drupal 7 or 10.</p>
  <p>You will need php 8.1+. Some extensions may not be ready yet for php 8.1, but by now most should be ok.</p>
  <p>Most of what you need to address will be on the drupal side. Some of your existing drupal modules or themes may not work with drupal 10, or will have a different module as a replacement.</p>
  <p>You will need to manually recreate any drupal views or webforms.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-02-06T23:26:55.373Z
Answers.Text: If you are using the same db for drupal and civicrm, then you'll have to copy the civicrm tables over separately to the new db - the drupal migrate won't (normally) know anything about those tables. Generally what I'd recommend is to ignore civicrm and first just sort out your migration to Drupal without CiviCRM. Then install civicrm on your new drupal (installation of civicrm is quite different, now using composer), and then update your civicrm tables with your backed up tables from your old site.
Answers.UserDisplayName: Alan Dixon
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-02-07T11:10:03.717Z
Answers.Text: Thanks for feedback. Views and webforms ar our biggest consideration, we have sometimes 50+ webforms and lot of views with diffrent settings
Answers.UserDisplayName: IProSoft
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-02-07T20:58:45.407Z
Answers.Text: We have done a lot of work over the years to try and improve the migration of civi related Views and Webforms. They still hit issues and require some manual rebuilding but it is much better imo than manually building them from scratch. For webform look for https://github.com/fuzionnz/webform_civicrm_migrate but note that it is a WIP. We have a patch as well that we have used to help with Views migrations but I don't know off-hand if it is still necessary/useful (and dev who made it is off till later this month)
Answers.UserDisplayName: petednz - fuzion
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-02-06T22:56:33.933Z
Answers.LastActivityDate: 2024-02-06T22:56:33.933Z
Answers.UserDisplayName: Demerit
Answers.Body: <p>Are you using the Drupal website or any of the integrations with Drupal?  If not, and it is just a container to run Civi then consider switching to WordPress - many small orgs find that easier than Drupal 10.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-02-07T11:08:03.717Z
Answers.Text: Thanks but we run over 30 sites using Drupal and moving to WP is not an option :-)
Answers.UserDisplayName: IProSoft
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-02-07T21:00:32.850Z
Answers.Text: Do all 30 sites also involve CiviCRM?
Answers.UserDisplayName: petednz - fuzion
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-02-09T07:45:36.493Z
Answers.Text: Yes, all sites are with CiviCRM
Answers.UserDisplayName: IProSoft
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2024-02-07T10:41:15.037Z
Answers.LastActivityDate: 2024-02-07T10:41:15.037Z
Answers.UserDisplayName: Aidan
Body: <p>I manage a website based on Drupal 7 where we use CiviCRM</p>
  <p>I would like to migrate to Drupal 10, but I have a lot of doubts about this procedure...</p>
  <p>Can you recommend any materials that reliably describe and help in such a process, courses, training or instructions?</p>
  
Tags: <migration>
Title: Full Drupal migrate from 7 to 10, site using CiviCRM
ThreadText: # Full Drupal migrate from 7 to 10, site using CiviCRM
  
  (Asked by: username_0 on 2024-02-06)
  
  I manage a website based on Drupal 7 where we use CiviCRM
  
  I would like to migrate to Drupal 10, but I have a lot of doubts about this procedure...
  
  Can you recommend any materials that reliably describe and help in such a process, courses, training or instructions?
  
  **Tags:** migration
  
  
  ---
  
  ## 3 answers
  
  ### Answer by username_1 on 2024-06-27. Score: 7
  
  Migrating Drupal/CiviCRM has really improved during my time with the platform. Today, there are three primary steps you'll need to complete to migrate your Drupal 7 -> Drupal 10 CiviCRM site.
  
  As has been mentioned, CiviCRM doesn't care much whether it's on Drupal 7 or 10 but it's a bit picky about the version of CiviCRM so if your Drupal 7 site is on 5.74.4 then to prevent hiccups, the Drupal 10 site ought to be using the same version.
  
  My process is as follows and requires that the Drupal migration be complete or mostly complete. For instance, you'll definitely want the users and roles to have been migrated. In the following workflow example I am migrating a Drupal 7 site with two databases (Drupal & CiviCRM) into a Drupal 10 site with a single database for Drupal & CiviCRM.
  
  Install the clean CiviCRM instance into your Drupal site, then:
  
  1. Copy the CiviCRM extensions from the Drupal 7 site to the Drupal 10 site.
  2. Import the Drupal 7 CiviCRM database structure without data into your clean CiviCRM instance (only CiviCRM structure). When I export my data, I export it with foreign key checks disabled.
  3. Import the CiviCRM data. I tend to not import any of the cache table data.
  
  Once you're done, take CiviCRM for a test drive and check the status page to make sure everything is running correctly.
  
  I usually clear caches and reset/update paths. I make sure that my extensions directory is named correctly for the new installation. For instance my old site used /sites/default/files/civicrm/extensions and my new site uses /sites/default/files/civicrm/ext.
  
  I also synch users to contacts and you'll need the [CiviCRM Entity](https://www.drupal.org/project/civicrm_entity) module to allow Drupal to access CiviCRM data for views.
  
  @username_2 mentioned in the comments that extra effort and attention will be required to migrate civicrm-related Views and Webforms into the Drupal 10 site from the Drupal 7 site. I have yet to find a good method to migrate views from D7 to D10, so I will build them from scratch on every migration I do. That way I know the view isn't flawed in some form or other.
  
  > **Comments:**
  > **username_2**: Since this may become the top answer I just want to add a comment about extra effort required to migrate civicrm-related Views and Webforms since both need special attention if they exist on the D7 site  
  > **username_1**: Good point Peter. I'll edit the answer to add that.  
  
  ---
  
  ### Answer by username_3 on 2024-02-06. Score: 1
  
  Civi by itself doesn't care too much if it's drupal 7 or 10.
  
  You will need php 8.1+. Some extensions may not be ready yet for php 8.1, but by now most should be ok.
  
  Most of what you need to address will be on the drupal side. Some of your existing drupal modules or themes may not work with drupal 10, or will have a different module as a replacement.
  
  You will need to manually recreate any drupal views or webforms.
  
  > **Comments:**
  > **username_4**: If you are using the same db for drupal and civicrm, then you'll have to copy the civicrm tables over separately to the new db - the drupal migrate won't (normally) know anything about those tables. Generally what I'd recommend is to ignore civicrm and first just sort out your migration to Drupal without CiviCRM. Then install civicrm on your new drupal (installation of civicrm is quite different, now using composer), and then update your civicrm tables with your backed up tables from your old site.  
  > **username_0**: Thanks for feedback. Views and webforms ar our biggest consideration, we have sometimes 50+ webforms and lot of views with diffrent settings  
  > **username_2**: We have done a lot of work over the years to try and improve the migration of civi related Views and Webforms. They still hit issues and require some manual rebuilding but it is much better imo than manually building them from scratch. For webform look for https://github.com/fuzionnz/webform_civicrm_migrate but note that it is a WIP. We have a patch as well that we have used to help with Views migrations but I don't know off-hand if it is still necessary/useful (and dev who made it is off till later this month)  
  
  ---
  
  ### Answer by username_5 on 2024-02-07. Score: 0
  
  Are you using the Drupal website or any of the integrations with Drupal? If not, and it is just a container to run Civi then consider switching to WordPress - many small orgs find that easier than Drupal 10.
  
  > **Comments:**
  > **username_0**: Thanks but we run over 30 sites using Drupal and moving to WP is not an option :-)  
  > **username_2**: Do all 30 sites also involve CiviCRM?  
  > **username_0**: Yes, all sites are with CiviCRM  
  
  ---
  
  