TL;DR
Ghost 5.65.0 introduces dynamic post rendering for collection cards, enabling real-time content updates without requiring page rebuilds. This release also brings significant improvements to the recommendations feature, AdminX UI refinements, and critical bug fixes for search functionality and collection card display. Performance optimizations for collections and enhanced caching mechanisms make this a substantial update for both publishers and developers.
The update focuses on improving the user experience with better design for recommendations in both the admin area and Portal, while also laying groundwork for more dynamic content capabilities throughout Ghost.
Highlight of the Release
- Dynamic post rendering for collection cards, allowing content to update automatically
- Significant improvements to the recommendations feature with better UI and functionality
- Performance optimizations for collections with improved query efficiency
- AdminX UI refinements and bug fixes for better user experience
- Fixed search functionality when using special characters
Migration Guide
Collection Changes
The "latest" collection is now treated as a "dynamic" collection, which equals the contents of the Posts API. The "featured" collection will continue to be saved in a "static" form as previously. This change improves performance by eliminating the need to constantly update the "latest" collection's static content.
AdminX Integration
If you've been using AdminX components or integrating with them, be aware that several components have been updated with new features and bug fixes. The error handling has been improved with new API error classes and retry logic matching the old admin.
Dynamic Content Rendering
If you're using collection cards in your theme, be aware that they now support dynamic content that updates automatically when posts change. This shouldn't require any changes to your theme, but it's good to be aware of this new capability.
Upgrade Recommendations
This release includes important bug fixes and performance improvements, particularly for sites using collections and the recommendations feature. The upgrade is recommended for all Ghost users.
For sites with heavy collection usage, this update should provide significant performance benefits due to the optimized collection repository queries and improved storage of collection posts relations.
No special upgrade steps are required beyond the standard Ghost update process.
Bug Fixes
Search Term Escaping
Fixed an issue where search terms containing special characters would cause JavaScript to crash due to invalid regular expressions. Special characters are now properly escaped when used in search queries.
Collection Card Display
- Fixed collection card post excerpts when posts start with a lexical card
- Fixed collection card empty parameters outputting null on frontend
- Fixed spacing issues in collection cards
- Fixed collection card display when admin/front-end URLs are different
AdminX UI Fixes
- Fixed z-index bug in react-select components
- Fixed Stripe disconnect copy error bug
- Fixed disappearing Ghost icon in the Recommendation list
- Fixed subscription/click count disappearing after editing a recommendation
- Fixed copy when there is only 1 click/new member
New Features
Dynamic Post Rendering
Ghost now supports dynamic rendering for collection cards, allowing content to update automatically when posts change without requiring a full page rebuild. This is a significant step forward in making Ghost content more dynamic and responsive to changes.
Enhanced Recommendations Feature
The recommendations feature has received substantial improvements:
- Better UI design in both admin area and Portal
- Ghost site detection with support for subdirectory installations
- One-click subscribe functionality with Ghost favicon indicators
- Statistics for "Recommending you" sites
- Show all recommendations option instead of pagination
AdminX Improvements
- Added Unsplash selector for image selection
- Pintura integration for Twitter and Facebook meta card image editing
- Keyboard shortcuts for search fields (press
/ to focus)
- Error boundaries to prevent entire page crashes
- Sentry integration for better error monitoring
Security Updates
No significant security fixes were included in this release.
Performance Improvements
Collection Repository Optimization
Optimized collection repository queries for better performance. On a dataset with 500k collections_posts records, the timing improved from roughly 7 seconds to 810ms after optimization.
Custom Cache Key Generation
Added support for custom cache key generation, allowing endpoints to implement their own key generation with access to the frame object. This enables smarter caching based on appropriate options and context values.
Optimized Storage of Collection Posts Relations
Rather than using a nested loop to reconcile in-memory vs. persisted PostCollections, the system now uses events to track which rows need to be deleted or inserted, significantly reducing processing work.
AdminX Bundle Size Optimization
Reduced bundle size and improved configuration in AdminX for better loading performance.
Impact Summary
Ghost 5.65.0 represents a significant step forward in making Ghost content more dynamic and responsive to changes. The introduction of dynamic post rendering for collection cards means that content can now update automatically when posts change, without requiring a full page rebuild.
The recommendations feature has matured considerably with improved UI, better Ghost site detection, and enhanced statistics. These changes make it easier for publishers to manage and benefit from the recommendations system.
Performance optimizations for collections are particularly notable, with query efficiency improvements that can reduce processing time from seconds to milliseconds on large datasets. This will be especially beneficial for sites with extensive collection usage.
The AdminX interface continues to evolve with better UI components, error handling, and keyboard shortcuts, making the admin experience more polished and efficient.
Overall, this release balances new features with important performance optimizations and bug fixes, making it a worthwhile upgrade for all Ghost users.