Seamless Migration of 9 Regional News Websites from Drupal 7 to Drupal 10 for AMGCI

PenBay Pilot is a local news platform serving Midcoast Maine, offering real-time updates on news, events, and community stories. It keeps residents informed and engaged with a strong focus on local journalism.

Industry

Digital Publishing & Local News Media

Technology

Drupal 10, PHP 8, Symfony 5, CKEditor 5

Services

Drupal 7 to 10 Migration, Website Development, SEO Preservation, Website Security, Project Management, Content Migration, Performance Optimization

Project Overview

AMGCI is a media group managing a network of nine popular regional news websites across three key clusters:

  • Maine-OK Enterprises: Boothbay Register, Wiscasset Newspaper, PenBay Pilot
  • BeaverDam Cluster: The Week Today, Dartmouth Week, Sippican Week
  • Cape Gazette

These websites were originally built on Drupal 7, which is approaching its official end-of-life. These factors raised critical concerns around security, performance, and maintainability.

AMGCI aimed to proactively upgrade all their websites to Drupal 10, ensuring long-term platform sustainability, improved user and developer experience, and robust security.

To achieve this, AMGCI partnered with EbizON, a leading digital transformation and web development agency with deep expertise in Drupal migrations and complex multi-site projects.

Project Objectives

  • Upgrade nine websites from Drupal 7 to Drupal 10 for security and sustainability.
  • Preserve SEO and traffic with seamless URL redirection and metadata migration.
  • Boost editorial workflows with modern tools like the TinyMCE Rich Text Editor and a new page builder.
  • Enhance security and performance to future-proof the digital experience.
  • Ensure zero downtime and provide ongoing support to editorial teams.

Project Execution

We created a custom Drupal 10 theme tailored to the brand identity of each publication. EbizON prioritized clean, modern design, mobile responsiveness, and WCAG-compliant accessibility while introducing a consistent visual experience across all properties. Editorial teams also gained access to a powerful new drag-and-drop page builder, streamlining content creation.

Key technical aspects of our theme development included:

  • Twig Templating: Page and element rendering was handled through Drupal’s Twig templating system, using clean markup and .html.twig templates. Preprocess functions were used to pass dynamic data and control logic at the theme level.
  • Library Management: CSS and JavaScript assets were defined and managed through .libraries.yml files. We utilized deferred and lazy loading techniques for performance optimization and reduced initial page load times.
  • WCAG-Compliant Accessibility: The themes were built to comply with WCAG 2.1 AA standards, ensuring content is usable by all audiences, including keyboard navigation, screen reader support, and accessible form controls.
  • Mobile-First and Responsive Design: The front end was built using a mobile-first approach, ensuring responsiveness across all breakpoints. Special attention was given to ad units, navigation behavior, and content readability on all devices.
  • Admin UX Enhancements: The backend editing experience was improved through custom view modes, clear field labeling, and tailored widget displays—helping editors preview content more effectively during creation.
  • Layout Builder Usage: While Layout Builder was enabled to define consistent layouts for content types, it was primarily used by developers and site builders to maintain a structured layout system. Editors worked within predefined field and paragraph structures, ensuring simplicity and design consistency.
  • This theming approach ensured a clean, accessible, and performance-optimized design while keeping the editorial experience streamlined and intuitive.

We developed more than 40 custom modules to fulfill the unique functional and editorial workflows across AMGCI’s network of sites. Each module was designed to encapsulate a specific set of responsibilities—ranging from content curation and ad management to third-party integrations and API handling. This modular approach not only improved code readability and maintainability but also ensured greater flexibility for future enhancements and workflow customizations.

In contrast to the Drupal 7 implementation—where much of the business logic was written directly within a single .module file—our Drupal 10 architecture leveraged modern best practices by fully utilizing:

  • Drupal’s Service Container: Business logic was decoupled into injectable services (MyCustomService::class) for better testability, reusability, and adherence to the Single Responsibility Principle.
  • Plugin API: Custom plugins were implemented for Blocks, Field Formatters, Views handlers, Condition plugins, and Queue Workers—enabling extensible, discoverable functionality across features like advertising logic and print workflows.
  • Plugin API: Custom plugins were implemented for Blocks, Field Formatters, Views handlers, Condition plugins, and Queue Workers—enabling extensible, discoverable functionality across features like advertising logic and print workflows.
  • Custom Forms & Form Alters: Form workflows for subscriptions, classifieds, and login were implemented using Form API best practices, including custom validation and AJAX behaviors. For forms involving long-running operations or large datasets, we implemented Drupal’s Batch API to offload processing from the browser and ensure a smoother user experience.
  • Routing and Controllers: Instead of using hook_menu, we created route definitions (*.routing.yml) and linked them with custom Controller classes for delivering both HTML and JSON responses.
  • Cron Jobs: Repetitive and scheduled tasks—like newsletter compilation or syncing Adobe InDesign content—were handled using Drupal’s cron system and the Queue API where applicable.
  • By embracing these Drupal 10 standards, the resulting architecture is clean, scalable, and aligned with modern object-oriented programming principles—ensuring AMGCI can continue evolving their platform with ease.

Migration Framework

We utilized the core Migrate, Migrate Plus, and Migrate Tools modules to define and execute migrations. The process was divided into the following stages:

Custom migration plugins and process callbacks were written to handle:

  • Legacy fields without 1:1 mapping (e.g., serialized data, field collections).
  • Date formatting inconsistencies across time zones.
  • Multi-valued fields and referenced entities.
  • Incremental Migrations: We ran staged test migrations in dev and staging environments before go-live, enabling thorough QA without affecting production.
  • Validation and Cleanup: Post-migration QA ensured all entities, aliases, and fields matched their Drupal 7 counterparts.
  • Rollback and Re-run Support: Each migration supported rollback, allowing fixes and updates without duplication or corruption.

As part of the Drupal 10 upgrade, significant improvements were made to the content architecture to align with modern practices and improve long-term maintainability.

Field Collections → Paragraphs

  • Replaced rigid Field Collections with Paragraphs for flexible, nestable components (e.g., callouts, galleries, videos).
  • Editors gained intuitive tools for building content-rich pages.
  • Paragraphs supported component-based design and integration with Layout Builder.

Panels → Layout Builder

  • Replaced Panels with native Layout Builder for visual layout customization.
  • Editors can manage per-node layout overrides, blocks, and fields with drag-and-drop ease—no code required.
  • Seamless integration with Paragraphs and Blocks ensured reusable, scalable designs.

OG Groups → Group Module

  • Replaced Organic Groups with the modern Group module for entity-based content access and segmentation.
  • Enabled creation of group-specific content types and role-based permissions.
  • Supported robust group-aware workflows.

Structured & Scalable Design

All decisions prioritized:

  • Reusability of components.
  • Scalability for future growth.
  • Editorial usability for non-technical users.

Results & Feedback

1. Upgraded Platform Across All 9 Websites

All websites were successfully migrated to Drupal 10, offering a modern, future-ready digital foundation with ongoing support for the next several years.

2. Enhanced Security Posture

AMGCI now benefits from robust security features built into Drupal 10, significantly reducing exposure to vulnerabilities like XSS, SQL injection, and outdated editor tools.

3. Improved Performance and Editorial Efficiency

  • Faster page load times and enhanced scalability
  • Streamlined content creation with CKEditor 5 and the new page builder
  • Better collaboration and moderation features for editorial teams

4. Strong SEO Continuity

All SEO benchmarks were preserved, ensuring consistent organic traffic and visibility across all news websites post-migration.

5. Positive Client Feedback

AMGCI expressed high satisfaction with the professionalism, structured approach, and responsiveness of the EbizON team. The migration was delivered on time and on budget, with zero disruption to readers and minimal editorial downtime.

Client’s Feedback

Working with EbizON Digital has been a highly satisfying experience. Their team is extremely methodical in their project management approach, consistently using tools and metrics to keep everything on track. We’ve seen steady progress throughout the engagement, and their commitment to structure and accountability really stands out. Communication has been seamless — whether through virtual meetings, emails, or direct messages, they ensure we’re always in the loop.

Am Gee
CEO, AmgeePUB

What Our Customers Says

Carousel

We turn your goals into reality.

Got a business? Let us make it better

Hundreds of Happy Customers