Skip to main content

Updating a site from Drupal 7 to Drupal 10. Checklist before migrating the site

On the first of September 2023 we launched a new version of our corporate website on a new version of CMS Drupal 10. More than 7 years have passed since the redesign, so we took into account in advance the moments that can be encountered when updating the project taking into account future SEO promotion.

Where do I start upgrading my site to Drupal 10?

The most important aspect that you need to initially understand is how the transition to the new version of the CMS platform will take place. If you have a large site, you want to completely migrate content, blocks, logic and configurations, it is better to use the internal Migrate tool and set up a multi-stage migration to Drupal 10. In our case we used a different scenario: the existing site structure was completely revised and due to the new strategy of semantization of key queries we developed new sections and groups of pages with the introduction of end-to-end blocks.

Main aspects when moving a new website to a server (shared hosting)

  • Checking web links

    • Check all internal links on the site and make sure they work correctly. The way the pathauto module works in Drupal 10 is a bit different than in Drupal 7, so the url may be different when saving by the [node:title] token.
    • Check external links to make sure they are still up to date and lead to the appropriate pages.
    • Check that the robots.txt and sitemap.xml files are present and correct. With the Simple XML Sitemap module in Drupal 10, you can set up an elaborate sitemap.
  • Checking URL structure

    • Make sure page URLs contain clear keywords and describe the page content. When redesigning, more often than not, the url structure is worth revising and, most importantly, properly setting up 301 redirects to new pages. So be sure to check that page URLs are correctly redirected from previous versions of the site.
  • Checking meta tags

    • Check that each page has a unique title using keywords.
    • Make sure the Meta Description for each page is optimized and contains relevant keywords.
    • Check that the Open Graph and Twitter (X) Card meta tags are set up correctly.
  • Checking page titles

    • Check that each page has an optimized first level headline (H1).
    • Make sure that the use of second (H2) and third (H3) level headings are structured logically and contain keywords.
    • Use special plugins for Google Chrome browser, such as Pixel Tools, that can visually display the structure of h1-h6 headings
  • Content verification

    • Check that the content on each page is relevant and contains keywords related to the topic of the page.
    • Make sure the content is unique and not duplicated on other pages or in other sections of the site.
    • For Drupal 10, it is important to check if there are empty pages in the database that do not contain content. For example, structuring by taxonomy can be used as a field, but a separate url will be generated for each term along the lines of /taxonomy/term/id
  • Image verification

    • Ensure that each image has a unique and descriptive file name containing keywords.
    • Check that the "alt" and "title" attributes for images are optimized and contain appropriate keywords.
  • Checking download speed

    • Use tools to check your site's loading speed and optimization, such as Google PageSpeed Insights or GTmetrix.
    • Optimize images, minify CSS and JavaScript to make pages load faster. Check for PHP APCu and PHP OPcode caching on the server. 
  • Mobile Optimization Check

    • Make sure the site is fully responsive and displays well on mobile devices.
    • Check that the mobile version of the site has the same URL structure and content as on the desktop version.
  • Checking the presence and correctness of the robots.txt and sitemap.xml files

    • Make sure that the robots.txt file is configured correctly and does not block access to important pages of the site.
    • Check that the indexing bans match the requirements of your site.
    • Check that the sitemap.xml file contains links to all important pages of the site.
    • Check that the sitemap.xml file is submitted to Google Search Console and other search engines.
  • Checking the availability of analytics metrics

    • After the migration, install the analytics tracking code (Google Analytics or Yandex.Metrica) on the new site.
    • Make sure that analytics data is tracked and displayed correctly in your control panel.
    • Restrict access to Yandex.Metrica and Google.Analytics for the site administrator. This is necessary to prevent the indexing of system pages when the counter is traversed.
  • Security check:

    • Make sure the site is secured with HTTPS protocol, set up a redirect from https://www. to https:// or vice versa.
    • Check if the .htaccess file is present and correct to ensure security and configure redirect rules.

The results of relaunching the site on the new platform in the first month

After launching a new version of the website, we measure the data and fluctuations in search that occurred after the first reporting period (1 month). Despite the fact that the period for analytics is still small, it allows us to form the first conclusions and results on SEO:

After the launch of the redesign, it is necessary to fully concentrate on the technical component, although all redirects are pre-configured, we had to finalize the hreflag markup, patch some modules, adjust existing pages. At the launch stage, the structure of the site is often rethought again.

CTR growth in the first month after launching a new website
CTR growth in the first month after launching a new website

For ourselves, we noted that CTR increased from 0.2% to 2% compared to August, with fewer impressions in Google during September than in August. Browsing depth increased on average by 2.5 times, time on site (retention) by 3.2 times. The number of spam attacks on web forms increased, so we had to improve protection. The situation on the English domain is completely different, but we will talk about indexing of 2-language sites in a separate article.