Changelog
v1.1.7
Applying a suggestion no longer breaks image or block markup, save failures are reported, and subdirectory installs now detect internal links correctly.
## What's fixed in 1.1.7
- **Links go into visible text only.** Applying a suggestion could insert the link inside an image's alt text, a caption, a block's settings or an existing link, breaking the tag or the block. Only visible text is linked now, and the anchor keeps the text exactly as written in the post (capitalisation preserved).
- **A failed save is reported as a failure.** If WordPress refuses to write the updated post, the suggestion is no longer marked as applied. The save also no longer strips embeds or other HTML from the rest of the post for users without the `unfiltered_html` capability.
- **Subdirectory installs detect internal links.** On a site at `https://example.com/blog`, links written as `/blog/page/` were not recognised as internal, so every post looked orphaned. Relative links (`page/`, `../page/`, `?page_id=12`) and links whose host differs only by letter case or a `www.` prefix are now recognised too.
- **Database write failures are reported.** Generating, applying or dismissing suggestions no longer counts a failed write as done.
- **Long or unusual titles.** Very long post titles are shortened at a word boundary when used as a keyword, titles with unusual characters no longer produce empty suggestions, and the Context column on the Suggestions tab no longer goes blank for them.
- **The Context column no longer goes blank for accented or damaged text.** An excerpt containing a byte that is not valid UTF-8 made the whole column empty. The offending bytes are dropped and the rest of the excerpt is shown, still with the keyword highlighted.
- **Sites whose address is stored with capital letters find their own links.** If the WordPress Address is recorded as, for example, `https://Example.test`, internal links were compared in lower case and WordPress then refused to match them, so every post looked like an orphan. The site's own spelling is now used for the lookup.
- **A rescan cannot wipe a post's links.** The existing links were deleted before the new ones were written, so anything that went wrong in between left the post with no links at all while the scan reported the links it had found. The replacement now happens in one step that either completes or leaves the previous links untouched, and the screen reports any post that could not be indexed.
- **Dismissing a suggestion that no longer exists is reported honestly.** A suggestion deleted in the meantime was reported as dismissed. The stored status is now checked.
- **Suggestions that could not be saved are reported.** A generation pass that could store nothing reported only how many posts it had analysed, which read as "no suggestions found". The number that could not be saved is now shown, as is a pass that could not clear the previous one first.
No settings or data changes. Run a scan after updating so subdirectory sites pick up the newly recognised links.
View full changelog →