Team Textpattern is pleased to announce the release of Textpattern 4.9.0, available for immediate download.

Overview

Textpattern 4.9.0 is a feature release with support for PHP 8.5 & MySQL 8.4, new features, security enhancements, improvements and bug fixes. In semantic versioning terms, Textpattern 4.9.0 is a minor release; in Textpattern terms we consider this a ‘big’ release.

As with all Textpattern upgrades, please refer to the current Textpattern system requirements and ensure you have known-good backups of your site files and database, including all uploaded content such as images & files. Before you make any changes, please refer to the accompanying release notes in HISTORY.txt to ensure you understand what has changed in this release, along with any releases that may have been skipped. You can check your current Textpattern version from the bottom of any page on the admin-side.

Thank you to everyone who contributed to this release with reporting & resolving bugs, providing & improving language translations and overall improvements to the Textpattern ecosystem. We’re grateful to all contributors offering us their expertise, time, attention, words, donations, signal boosting, evangelism, cheerleading and all other activities that fuel our project.

Textpattern’s infrastructure and continued development is kindly supported by DigitalOcean, 1Password and BrowserStack. We are grateful for their ongoing involvement & support for Textpattern, and our global community of authors, publishers, designers and administrators. Thank you!

There is no spyware, adware, user tracking or other junk in Textpattern. We work hard to keep Textpattern fast, nimble, secure and ready for pretty much anything you can throw at it. You can show your appreciation by sponsoring Textpattern on GitHub or supporting Textpattern on Open Collective. Alternatively, you can donate to Team Textpattern with PayPal.

We have a friendly forum for a Textpattern sites showcase – tell us what you’ve made with Textpattern, we’d love to hear from you. Even a ‘hello!’ or ‘thanks!’ helps us to gauge how far Textpattern has travelled, so don’t be a stranger.

System requirements

Textpattern 4.9 requires a minimum of PHP 5.6 as part of the system requirements, though using a vendor-supported PHP version is highly recommended. There are notable performance gains with modern PHP versions, as well as security considerations.

Download Textpattern 4.9.0

You can download Textpattern 4.9.0 from textpattern.com or GitHub. Both locations provide the same compressed archive files, along with checksums for validating your download.

Textpattern 4.9.0 is available as a .zip archive intended for single-site instances. Most Textpattern administrators will find this archive format appropriate for their needs.

Textpattern administrators wishing to use Textpattern’s multi-site capabilities or having a preference for a UNIX/Linux-centric archive format can download either the .tar.gz or .tar.xz archive as they include the necessary extra multi-site support files and symbolic links.

From Textpattern 4.9.0, we offer a .tar.xz archive for further byte savings. The XZ compression format’s storage algorithm provides a considerably smaller download than the .tar.gz archive. The unpacked contents of the .tar.xz archive are identical to the .tar.gz archive’s unpacked contents.

From textpattern.com

You can download Textpattern 4.9.0 from textpattern.com using the following links,

File download

textpattern-4.9.0.zip

SHA256 checksum b0271a032305d06a7de88ced88dce6ea15fc5462c48e0f0c3a79d4b17af07804
File size 4014 kB | Created
File download

textpattern-4.9.0.tar.gz

SHA256 checksum ace64245222259f669ad4e40cd8b2f21b5bef2a97a7133bc35684bd7b2c21206
File size 3676 kB | Created
File download

textpattern-4.9.0.tar.xz

SHA256 checksum 8d1b4173b336d53642cb90ca590193d43c38110132b96a84a1e30ef18691d842
File size 2373 kB | Created

From GitHub

Install

Please refer to the Textpattern INSTALL.txt for a comprehensive walkthrough. This file is included in the Textpattern archive and linked here for your convenience.

Upgrade

We have a forum thread dedicated to Textpattern 4.9.0 feedback. We gather field reports from fellow Textpattern administrators and users that may assist or guide you with upgrading.

Please refer to the Textpattern UPGRADE.txt for the upgrade procedure. This file is included in the Textpattern archive and linked here for your convenience.

As with any software update, please ensure you verify working backups of Textpattern sites you are upgrading before undertaking any modifications. This includes the Textpattern database and files, plus any file and/or image uploads.

The vast majority of Textpattern upgrades are smooth sailing and occur without incident, but on the rare occasion something does go astray it’s preferable to safely restore the known-good version from your full site backup and troubleshoot any issues while your site continues to be available on the prior version.

What’s new in Textpattern 4.9.0?

We have made more than 2,000 changes to the Textpattern core codebase since the release of Textpattern 4.8.8 in 2022. This represents a considerable amount of time spent & care taken to ensure our CMS thrives on new releases of MySQL & PHP, as well as maintaining support for older MySQL & PHP releases.

We have paid particular attention to ensure Textpattern’s compatibility with the recently-released PHP 8.5.0, as well as previous PHP releases made after the release of Textpattern 4.8.8 (i.e. PHP 8.4 & PHP 8.3).

We are confident that Textpattern works well on modern MySQL & PHP, and we will continue to work towards patch releases of Textpattern 4.9 to provide compatibility with PHP’s annual release cadence and MySQL’s next Long Term Support (LTS) release scheduled for mid-2026.

The Textpattern HISTORY.txt outlines changes for this and all previous Textpattern releases, along with their respective release dates. We recommend you read the list of changes to understand how this may affect your current sites, especially if you’re upgrading from older versions. Please note that while upgrades from very old releases of Textpattern are possible, you may need to perform a multi-stage upgrade.

If you require clarification on any aspect of the release notes, we recommend you seek advice before starting a site upgrade. The Textpattern support forum is an excellent place to start, and the Textpattern user documentation provides examples, explanations and background information.

The following lists are cherry-picked items from the @HISTORY.txt@ to provide an overview for interested parties.

Headlines

  • Feature release with support for PHP 8.5, security and functionality enhancements, general improvements, bug fixes.
  • Security: Fix reported cross-site scripting issue relating to article preview CSRF token (many thanks, Paul Ritchie at Pentest Limited).
  • Mail: Support for SMTP for sending emails via third-party systems to improve deliverability. Industry-standard PHPMailer also available internally.
  • Plugins: Full plugin creation and editing now available, including pophelp support. Plugins can be updated directly from the admin panel when new versions are available from plugins.textpattern.com. Zip, Template (.php), and .txt plugin types are supported, with improvements in Textpack handling, and verification to prevent tampering during installation.
  • Sandboxed article previews: Write panel offers previews for each field or the whole article, with or without tag parsing. Either snapshot or continuous (live) previews are available.
  • Dynamic thumbnails: Only display images at sizes you need by using a width, height or crop attribute in image/thumbnail tags to securely render an image at that resolution, and cache it for future use. Dynamic admin-side thumbnails are also supported, with dimensions governed by Admin-Theme Preferences. Supports most modern image formats, including SVG.
  • Pending articles can now be display on sites to offer collaborative workflows.
  • Themes are more self-contained and can include Textpacks and Preferences, as well as their own checksums.

Admin-side

  • ‘Sticky’ Save buttons on all admin panels.
  • Panel upgrades to expose additional info (image and file sizes, dates, etc) and to permit individual asset deletion.
  • Pre-fight Diagnostics now collapses if you’ve read it, and reopens automatically if something changes.
  • Language panel improvements, including In-use languages cannot be deleted.
  • New Mail and Admin Theme prefs areas. A few new preferences scattered throughout.

Tags

  • <txp:date /> tag.
  • <txp:if_article_status /> tag.
  • <txp:if_items_count /> tag.
  • Added parent attribute to <txp:category />.
  • Added inline value to format attribute of <txp:css />.
  • Added alias attribute to <txp:evaluate />.
  • Ability to serve files via type attribute to <txp:file_download />.
  • Added exclude attribute to <txp:file_download_list /> and <txp:linklist />.
  • Site production status values to process attribute of <txp:hide />.
  • Added level attribute to <txp:if_category />.
  • Added match, separator attribute capability to <txp:if_yield />.
  • Added exclude, month and time attributes to <txp:images />.
  • Added lang attribute to <txp:page_url />.
  • Added target attribute to <txp:popup />.
  • Added filter attribute to <txp:section_list /> and <txp:if_section />.
  • Added global variable attribute.
  • Added global offset attribute can be set by URL parameters.
  • Tag-related: Self-closing tag output for html5 doctype to silence validators.

Plugins

  • Plugins import Textpack strings correctly.
  • Compiled plugins can be uploaded via ‘Browse…’ feature.
  • Compatible plugin upgrades directly from the Plugins panel.
  • Create and install new plugins directly from the Plugins panel.
  • Plugin multi-edit option: revert to last installed code content.
  • All plugin metadata exposed in the Plugin Edit panel.

Internal tweaks

  • Field size increases (up to 16MB Page templates, 1023-character descriptions) and checks.
  • Content dates are now virtually limitless, extending prior to (as far back as 1 AD) and beyond the UNIX epochs.
  • Many system-wide constants are overridable from config.php (a.k.a. “administrator preferences”).
  • RPC functionality improvements and metaWeblog.newMediaObject support.

Developers

  • Concurrent logins for testing.
  • Panel-level callbacks on the Users, Articles and Images panels, allowing for finer-grained and deeper customisation.
  • New UI library, written from the ground up.
  • Many new callbacks and hook points, including new lifecycle ‘loaded’ step.

Feedback

We are particularly interested in feedback on these areas:

  • User experience with dynamic thumbnails.
  • User experience with Textpattern on PHP 8.5 compared to previous versions of PHP.
  • Compatibility and usability with end-of-life’d PHP releases, factoring in the Textpattern system requirements.
  • Usability of the new tag attributes (refer to the Textpattern HISTORY.txt for details).
  • Any unexpected issues appearing in the front-side of your Textpattern sites.
  • Any unexpected issues shown in admin-side Diagnostics.

We have a dedicated support forum thread for Textpattern 4.9.0 feedback where Textpattern users, experts & developers gather and address feedback. We are grateful for all feedback, even a short confirmation that your upgrade(s) completed as expected is appreciated.

We maintain Textpattern issues at GitHub if you would like further insight into where we’re heading with this release and future work.

Further notes

If you find anything not working correctly or wish to propose improvements, please file a report on GitHub. There are templates for feature requests and bug reports.

Textpattern Demo

The Textpattern demo has been updated to offer Textpattern test drives. The demo sites are rebuilt every few hours using the Textpattern auto-installer.

We hope you enjoy this release and it serves you, your sites and clients well!

Thank you for your interest in Textpattern!