Skip to main content
Home
GrN.dk

Main navigation

  • Articles
  • Cases
  • Services
  • Your Digital Project Manager
  • About Greg Nowak
  • Image Gallery
  • Contact
User account menu
  • Log in

Join my community / free newsletter — sign up here

Breadcrumb

  1. Home

CMS Upgrades in 2026: Choosing PHP for WordPress and Drupal

Illustrated infographic summarizing: CMS Upgrades in 2026: Choosing PHP for WordPress and Drupal

By Greg Nowak. Updated 25 July 2026.

If your website generates leads, processes payments, publishes time-sensitive content or supports internal operations, a PHP upgrade is not routine server housekeeping. It is a change to the runtime underneath your CMS, extensions, custom code, scheduled jobs and deployment tools.

The business objective is therefore not simply to install the newest PHP release. It is to choose a supported destination that fits the CMS, identify blockers before production and protect the workflows that make the site valuable.

The PHP clock is already running

PHP 8.1 and earlier are outside upstream support. PHP 8.2 receives critical security fixes only until 31 December 2026, so it is now a short-term holding position rather than a sensible destination. PHP 8.3 is also in security-only support. PHP 8.4 receives security coverage through 2028, while PHP 8.5 has active support through 2027 and security coverage through 2029.

That does not make PHP 8.5 the automatic answer. Your CMS version, plugins, modules, Composer packages, hosting platform and custom integrations must all support the target. The best destination is the newest version the complete production stack can run reliably—not merely the newest option in a hosting control panel.

Site position Likely planning target Important qualification
WordPress 6.8 or later PHP 8.4 Confirm the active theme, plugins and custom code
WordPress 6.9 or 7.0 PHP 8.5 Use staging to test the complete extension stack
Drupal 10 PHP 8.4 Drupal 10 does not officially support PHP 8.5
Drupal 11.3 PHP 8.4 or 8.5 Choose in the context of the Drupal 12 roadmap
Drupal 12 plan PHP 8.5 Also check database, Composer and hosting requirements
A planning matrix for selecting a PHP target. It is a starting point, not a substitute for testing the individual site.

WordPress and Drupal need different decisions

WordPress recommends PHP 8.3 or newer. Its current compatibility guidance documents full PHP 8.4 support for WordPress 6.8 onward and full PHP 8.5 support for WordPress 6.9 and 7.0. Core support is reassuring, but it says nothing definitive about an old page builder, an abandoned payment plugin or bespoke theme code.

For a maintained WordPress 6.8 site, PHP 8.4 is a pragmatic target with a useful support runway. PHP 8.5 deserves consideration when the site runs WordPress 6.9 or 7.0 and its extensions have been verified. Avoid using WordPress’s broad minimum-version support as an operational recommendation: the project retains compatibility with some PHP releases that upstream PHP no longer maintains.

Drupal has tighter version combinations. Drupal 10 supports PHP through 8.4, while Drupal 11.3 adds PHP 8.5 support. Drupal 12 requires PHP 8.5 and raises some database minimums, including MariaDB 10.11 and PostgreSQL 18. A Drupal 12 project should consequently be treated as a platform upgrade, not scheduled as an isolated CMS deployment.

Audit what is actually running

Production, staging, command-line tools and the web server can quietly use different PHP binaries or configuration files. Collect evidence from each environment before choosing the target. These commands provide a useful first pass:

php -v
php -m | egrep 'curl|dom|gd|imagick|mbstring|openssl|pdo|xml|zip'
php -i | grep 'Loaded Configuration File'

wp core version
wp plugin list --status=active --fields=name,version,update,status
wp theme list
wp cron event list

drush status
composer outdated --direct
composer prohibits php 8.4 --tree
composer prohibits php 8.5 --tree
composer check-platform-reqs

Composer’s prohibits command identifies packages whose constraints block a target PHP version. Its answer is diagnostic, not permission to force an update. Review the dependency, available releases and application compatibility rather than bypassing platform requirements.

For WordPress, inventory must-use plugins, custom themes, forms, checkout, search, page builders, filesystem operations and external API integrations. For Drupal, include contributed and custom modules, Composer constraints, required PHP extensions, deprecations and database requirements. Validate changed server configuration with nginx -t or apachectl -t before any reload.

Test the business paths, not just the homepage

A cached homepage is weak evidence that an upgrade succeeded. Build or refresh staging so its PHP extensions, database, configuration and deployment process resemble production. Then test the actions whose failure would create calls, lost revenue or manual cleanup:

  • Lead forms, confirmations and outbound email
  • Authentication, password resets and user permissions
  • Checkout, payment callbacks and subscription events
  • Search, redirects, sitemaps and structured data
  • Scheduled publishing, imports, exports and cron jobs
  • Media uploads, image processing and document generation
  • Editor, moderation and approval workflows

Check application, PHP-FPM and web-server logs during testing. Test both uncached and cached responses, because an edge cache can conceal an error or keep an old response alive after deployment.

Make production deployment reversible

Agree on the release window, responsibilities, acceptance checks and rollback trigger before work starts. Record the database backup or snapshot, previous runtime setting, package lock file and deployable application version. After release, verify the important workflows in production, inspect queues and scheduled jobs, and monitor logs rather than waiting for users to report failures.

For owners and agency leads, the useful planning deliverable is a short decision record: current stack, recommended target, known blockers, remediation owners, test scope, deployment sequence and rollback method. It makes estimates comparable and prevents hosting, development and content teams from assuming somebody else owns the risky part.

Need someone to coordinate the moving parts?

Greg can turn an uncertain PHP or CMS upgrade into a staged technical plan, coordinate developers and hosting providers, and keep testing, deployment and rollback tied to business priorities. Talk with Greg about planning your CMS upgrade.

Related on GrN.dk

  • AI Crawler Control for Business Websites: Protect Content Without Vanishing from Search
  • MariaDB 10.6 EOL: quiet CMS hosting debt needs a real upgrade plan before July 2026
  • Recommended WordPress Plugins for Business Websites: Keep the Stack Lean

Need help with this kind of work?

Plan your CMS upgrade with Greg Get in touch with Greg.

Sources

  • PHP: Supported Versions
  • PHP support clarification, spring 2026 edition
  • Requirements — WordPress.org
  • PHP requirements — Drupal.org
  • Announcing Drupal 12.0.0 platform requirements
Last modified
2026-08-11

Tags

  • wordpress
  • Drupal
  • PHP upgrades
  • Website Operations
  • technical project management

Review Greg on Google

Greg Nowak Google Reviews

 

Written recommendations from Trafik og Veje, Aarhus Municipality (2011) and AgroTech (2010) — read them on LinkedIn.

Illustrated infographic summarizing: WordPress 7.1 Forces the Editor Into an iframe—Test Your Custom Blocks
WordPress 7.1 Forces the Editor Into an iframe—Test Your Custom Blocks
2026-08-15

WordPress 7.1 removes the non-iframe editor fallback. Learn how to audit custom blocks, test real workflows and fix compatibility issues before launch.

Illustrated infographic summarizing: GitHub will stop sending jobs to stale self-hosted runners
GitHub will stop sending jobs to stale self-hosted runners
2026-08-14

GitHub starts enforcing runner versions on August 24, 2026. Audit and upgrade self-hosted runners before builds and deployments start stalling.

Illustrated infographic summarizing: Your AI Agent Has Shell Access. What Can It Reach?
Your AI Agent Has Shell Access. What Can It Reach?
2026-08-13

A practical guide to mapping what a shell-enabled AI agent can reach, then containing its access to files, credentials, networks, tools, and high-impact actions.

Illustrated infographic summarizing: Cloudflare Changed DoH JSON. What Else Is Parsing DNS as Text?
Cloudflare Changed DoH JSON. What Else Is Parsing DNS as Text?
2026-08-12

Cloudflare’s DoH JSON change exposes brittle DNS parsing. Find affected scripts, test both formats, and choose a safer integration contract.

Illustrated infographic summarizing: Your Website Can Answer Questions Now. Should It?
Your Website Can Answer Questions Now. Should It?
2026-08-11

NLWeb makes conversational website search practical to deploy. The real question is whether your content, users and team are ready to support it.

Illustrated infographic summarizing: AI Search Finally Has Reports. Now Connect Visibility to Revenue
AI Search Finally Has Reports. Now Connect Visibility to Revenue
2026-08-11

Google and Bing now expose first-party AI search data. The real task is connecting citations and impressions to analytics, CRM outcomes, and revenue.

Illustrated infographic summarizing: The Bot Passed Your CAPTCHA. What Did It Do Next?
The Bot Passed Your CAPTCHA. What Did It Do Next?
2026-08-11

Passing a challenge is only one signal. Session analysis, server-side validation and endpoint-specific controls help reduce bot abuse without blocking customers.

Illustrated infographic summarizing: WordPress 7.1 Moves Image Work Into the Browser—Test Every Media Hook
WordPress 7.1 Moves Image Work Into the Browser—Test Every Media Hook
2026-08-11

WordPress 7.1 shifts image processing into supported browsers. Here is what to test across hooks, CDNs, formats, security headers, and fallbacks.

Illustrated infographic summarizing: Prompt Caches Have Write Costs Now—Audit What Your Workflow Reuses
Prompt Caches Have Write Costs Now—Audit What Your Workflow Reuses
2026-08-10

GPT-5.6 makes cache writes billable. See how to spot wasted writes, stabilise prompt prefixes, place breakpoints and measure whether caching pays.

Illustrated infographic summarizing: The AI Crawler in Your Logs May Be Wearing a Borrowed Name
The AI Crawler in Your Logs May Be Wearing a Borrowed Name
2026-08-09

A User-Agent is a claim, not proof. See how to verify AI crawler traffic before it shapes reporting, robots.txt decisions, or WAF exceptions.

More articles
RSS feed

Footer

  • All articles
  • Contact

GrN.dk — AI automation, web platforms, web optimization, data handling and logistics.

© 2026 GrN.dk · LinkedIn · Contact · AI automation in Danish: nowa.dk

Behind GrN.dk: Individual Entrepreneur Codecrafter · Tax ID 305669096 · Bakhtrioni St. 22, 0194 Tbilisi, Georgia · official business register