SEOPress 10.2 is now available. We encourage you to update your site as soon as possible to take advantage of the latest features, improvements, and fixes.
🎉 New – AI is now just a few clicks away
Turning AI on used to mean digging through the settings before anything happened. SEOPress 10.2 puts it where you start: a new AI Assistant step in the installation wizard lets you enable AI and connect your provider without leaving the wizard. Paste your SEOPress AI Credits token, or your own OpenAI, Anthropic Claude, Google Gemini, MistralAI or DeepSeek key, and you are done.

In the editor, the AI Assistant is now enabled by default and introduces itself with a one-time notice, so you can see what it does before configuring anything.
AI generation is also far more dependable. It no longer fails on servers without the intl PHP extension, images can be attached again, a failed bulk generation is now reported as an error instead of a silent success, and empty results with GPT-5 and DeepSeek are fixed.
🎉 New – Opening hours, set post by post (PRO)
Until now, the opening hours of your Local Business schema were global: one set of hours for the entire site. Fine for a single shop, unusable for a directory or a business with several locations.
SEOPress 10.2 adds a per-post source for opening hours. Turn it on for a post, set its own hours in the schema editor, and that post publishes them instead of your global ones. Existing schemas keep using the global hours, so nothing changes unless you ask for it.

Schemas gained a few other useful changes. The Event type now offers a plain “Event” and selects it by default: until now, a new schema quietly claimed your concert or exhibition was a “Business Event”. Dynamic variables are resolved in custom schemas no matter how they are attached, and the taxonomy term picker can finally be searched instead of scrolled.
🎉 New – Test a redirect without leaving the list (PRO)
Checking a redirect meant leaving the row, opening the tester at the top of the page and retyping the URL by hand. A new “Test URL” row action does it for you: it opens the tester prefilled with the origin, and runs the test straight away.

Bulk actions on categories can now do more than add. Replace the categories of a whole batch of redirects, or remove them, using the same multi-select field as the redirect editor.

Several long-standing issues are fixed along the way: regular expressions are stored exactly as you type them, on import and on save; the destination URL is no longer cleared when you click in the field; and the URL tester now reports the right result for your home page, for redirect chains and for visitor conditions. Your site’s own internal requests are no longer logged as 404s either, a loop that could snowball on sites running a cache plugin that purges on save.
🎉 New – Site Audit searches your entire list of issues (PRO)
On a site with hundreds of issues, search, sorting and filters only applied to the rows already on screen. A page sitting on page 28 could not be found by typing its title, and the total in the header described a different set than the table below it.
All of it now runs on the server, across the whole list, and the count always matches the rows displayed.

Long scans are more robust too: a single problematic page no longer stops the whole audit, a stuck scan is cleared when a new one starts, and the Technical tab no longer flags a robots.txt that blocks nothing.
🎉 A faster, more accessible admin
The SEO metabox now groups the requests it sends when you open a tab. Where a tab used to load WordPress several times over just to read your settings, it does it once. The difference is immediate on shared hosting.
Importing metadata from a CSV file is smoother as well (PRO): the separator is detected automatically, and an import that fails now tells you why, instead of reporting a success that wrote nothing.
On the accessibility side, the SEO button in the admin bar, the color picker and the opening hours fields all received proper labels. And when your user role is not allowed to edit a section, the SEO metabox now explains it instead of showing an empty panel.
SEOPress 10.2 is tested with WordPress 7.1 and compatible with PHP 8.5.
🎉 Other enhancements and fixes
SEOPress 10.2 also includes close to 40 fixes, among them:
- the social sharing image on archive pages and on the WooCommerce shop page,
- the “noindex” set on your blog page, now respected in the XML sitemap,
- image URLs coming from a page builder or a CDN, no longer broken in your image sitemap,
- target keywords with accents or apostrophes, now matched correctly in the content analysis,
- FAQ blocks, no longer corrupted on save, with blocks already damaged repaired automatically,
- content built with page builders such as Divi 5, now read by internal linking suggestions,
- headings inside groups, columns and third-party blocks, now detected by the table of contents,
- restricting SEO sections by user role, which could prevent saving or publishing a post,
- the Markdown version of your pages, no longer served to your visitors by a cache plugin,
- and various security improvements.
Don’t forget to subscribe to our newsletter to follow our latest product updates and receive the latest Google News:
You like SEOPress? Please do us a favor: leave a 5-star review on the official WordPress plugins directory to help us. More than 1,200 reviews! Thank you all!
Leave a 5-star review
Changelog
This update contains the following changes (full changelog here):
NEW Setup wizard: a new AI Assistant step to turn on AI and connect your provider without leaving the wizard NEW The AI Assistant is now enabled by default in the editor, with a one-time notice explaining how it works (PRO) NEW Local Business schema: set your opening hours post by post, ideal for directories and multi-location sites (PRO) NEW Redirections: test a redirect directly from the list with the new "Test URL" row action (PRO) NEW Redirections: bulk actions can now replace or remove categories, not only add them (PRO) NEW Site Audit: search, sort and filter your entire list of issues, not just the page displayed (PRO) NEW Metadata CSV import: the separator is now detected automatically, and errors are explained (PRO) INFO Tested with WordPress 7.1 and compatible with PHP 8.5 INFO Faster SEO metabox: fewer requests sent to your server when you open a tab INFO Clearer message in the SEO metabox when your role is not allowed to edit a section INFO Better accessibility: proper labels for the SEO button in the admin bar, the color picker and the opening hours fields INFO Schema markup is now output with standard JSON escaping, for better compatibility with validators FIX Default Event type for schemas FIX Social sharing image on archive pages and on the WooCommerce shop page (Facebook and X/Twitter) FIX Titles and meta descriptions on archive pages: the right post type is now detected FIX XML sitemap: the "noindex" option set on your blog page is now respected FIX XML sitemap: image URLs coming from page builders or a CDN are no longer broken FIX XML sitemap: no more repeated language switching with WPML on large sites FIX HTML sitemap: post types you unchecked in the settings are no longer listed FIX Content analysis: target keywords with accents or apostrophes are now matched correctly FIX Content analysis: every robots directive is reported, not only the last one FIX Image SEO: an empty alt attribute is now filled in, instead of a second one being added FIX FAQ block: the schema is no longer corrupted on save, and blocks already broken are repaired FIX WebSite schema: dynamic variables and custom fields are now resolved, without escaped characters FIX Settings: the dynamic variables dropdown no longer scrolls the page back to the top FIX Classic editor: the link search results no longer cover the search field FIX Google snippet preview no longer breaks when your content contains emojis FIX The SEO metabox no longer shows up empty with Bricks Builder FIX Restricting SEO sections by user role no longer prevents saving or publishing a post FIX "Page 1 of 0" is no longer displayed on content without pagination FIX Google Analytics tracking script no longer fails when jQuery loads late FIX Admin notices left behind by removed plugins no longer trigger a PHP error FIX The reusable configuration export no longer includes your default sharing image FIX Redirections: regular expressions are kept exactly as you typed them, on import and on save (PRO) FIX Redirections: the destination URL is no longer cleared when you click in the field (PRO) FIX Redirections: more accurate URL tester (home page, redirect chains, visitor conditions) (PRO) FIX 404 monitoring: your site's own internal requests are no longer logged as 404 (PRO) FIX AI: generation no longer fails on servers without the intl PHP extension (PRO) FIX AI: images can be attached again, and failed bulk generations are now reported as errors (PRO) FIX AI: retired OpenAI model replaced, and empty results fixed with GPT-5 and DeepSeek (PRO) FIX AI Assistant: correct width and position of the panel in the editor (PRO) FIX Schemas: dynamic variables in custom schemas, searchable term picker, and a more accurate Manual tab (PRO) FIX Schemas: an invalid schema no longer prevents you from saving your post (PRO) FIX Site Audit: a single problematic page no longer stops the whole scan (PRO) FIX Site Audit: stuck scans, robots.txt false positive and last scan date (PRO) FIX Internal linking: content built with page builders (Divi 5...) is now read, and saving no longer empties the index (PRO) FIX Table of contents: headings placed inside groups, columns or third-party blocks are now detected (PRO) FIX Agent Ready: the Markdown version is no longer served to your visitors by a cache plugin (PRO) FIX Agent Ready: URLs containing special characters are now handled correctly (PRO) FIX SEOPress PRO no longer causes errors when the free plugin is deactivated (PRO) FIX Various security improvements