Skip to content

Releases: throughout-org/rankout-wp-plugin

v1.2.0

Choose a tag to compare

@Janith-01 Janith-01 released this 08 Oct 10:47
b5adc96

Structured data (schema.org JSON-LD) tools — the missing capability behind "Site has zero structured data" opportunities that previously failed to implement.

  • New: wp_get_post_schema / wp_update_post_schema add JSON-LD (Article, FAQPage, BreadcrumbList, Person, Product, Review, HowTo, Event, VideoObject, Recipe) to one post/page. One block per type per post — re-adding a type replaces it rather than duplicating.
  • New: wp_get_site_schema / wp_update_site_schema do the same site-wide (Organization, WebSite, LocalBusiness), output on every page.
  • Safety: wp_update_site_schema refuses Organization/WebSite outright when Yoast, Rank Math, or All in One SEO is active — those plugins already generate both automatically, and a second independently-authored one is a duplicate-identity problem, not a harmless extra copy. Every read reports which SEO plugin (if any) is active.
  • wp_update_site_schema requires manage_options — the plugin's first write tool with no single post to check edit rights against.
  • Nothing here publishes anything; every write is still a draft proposal a human approves in RankOut before it reaches the live site.

v1.1.0

Choose a tag to compare

@Janith-01 Janith-01 released this 08 Oct 05:21
70d3a0a

Draft creation: RankOut can now add new posts and pages, not just edit existing ones.

  • New: wp_create_post / wp_create_page create content as a DRAFT only. Nothing can publish; publishing always stays a human action in wp-admin. A slug is required and must be unused, so an existing page can never be overwritten or duplicated. An identical retry returns the draft it already made.
  • New: wp_trash_created_post undoes a create. It refuses anything RankOut didn't create, or that has since been published.
  • New: wp_search_posts finds posts/pages by keyword, so RankOut can check a slug is free and find pages to link to.
  • If WordPress filters part of the content on save, the draft is deleted and an error is returned instead of keeping a partial page.
  • Permission checks: creating needs edit_posts / edit_pages (and edit rights on a parent page); undo needs delete_post.
  • Creates are logged under Settings → RankOut Connector → Recent changes.

No new OAuth scopes: these tools use the existing mcp:posts:read / mcp:posts:write permissions, so existing connections keep working.

v1.0.5

Choose a tag to compare

@InsafInhaam InsafInhaam released this 28 Sep 15:50

WordPress-native editor detection and safe Gutenberg block editing.

  • New: wp_detect_editor reports canReadContent/canUpdateTitle/canUpdateSeoMetadata/canSafelyEditContent/requiresBuilderSpecificAdapter/reasonIfUnsupported per post, using WordPress's own has_blocks()/parse_blocks() for Gutenberg and each builder's own postmeta flag for Elementor/Divi.
  • New: wp_update_post_block_text edits exactly one paragraph/heading block by position, preserving every other block's structure, attributes, and nested blocks.
  • Content-edit restriction is enforced server-side inside update_content() itself, so a direct MCP call is refused on an Elementor/Divi page exactly like an AI-driven one, while title-only updates on the same page still succeed.
  • Also includes the prior P0 hotfix: deduped identical-retry revisions, fixed a wp_get_post_revision by-reference call, and corrected MCP JSON-RPC envelope responses.

Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com

v1.0.3

Choose a tag to compare

@InsafInhaam InsafInhaam released this 24 Sep 07:19

Fix rollback correctness: the captured revision_id represented the post-write state, not pre-write, making wp_restore_revision a silent no-op that still reported success. Now explicitly snapshots the pre-write content before each write.

v1.0.2

Choose a tag to compare

@InsafInhaam InsafInhaam released this 24 Sep 06:48

Fix wp_get_post/wp_get_page returning the filtered display title (wptexturize-transformed) instead of the raw stored post_title — was causing spurious post-write validation failures for titles containing &, --, or similar characters.

v1.0.1

Choose a tag to compare

@InsafInhaam InsafInhaam released this 24 Sep 05:14

Fix wp_find_post: resolve the site's Posts page URL (Settings > Reading), which WordPress core's url_to_postid() cannot match on its own.

v1.0.0

Choose a tag to compare

@InsafInhaam InsafInhaam released this 23 Sep 19:15

Initial release: OAuth 2.1 + PKCE authorization server, MCP tool endpoint, content/SEO/site-health/history tools, GitHub-based self-updater.