AP Writer

Description

AP Writer improves the SEO and reading experience of your WordPress posts. The core features work for free, with no account and no external connection.

Features available for free (no account required)

  • Article design — Configure H2/H3 heading styles and colors, list and bold styles, font size and line height from the admin screen.
  • Table of contents — Automatically detects H2/H3 headings and inserts an accordion-style table of contents at the top of each post.
  • Related posts — Displays related posts from the same category as a thumbnail grid at the end of each post.
  • Reading time & last-updated date — Shows post meta information near the top of the content.
  • JSON-LD structured data — Outputs BlogPosting and FAQPage schema automatically for Google rich results.
  • AI search (LLMO) tools — Organization schema with your official profile links (sameAs) on the front page, an llms.txt file for AI assistants, a robots.txt checker for AI crawlers with an optional explicit-allow policy, and optional IndexNow notifications to Bing (used by ChatGPT search and Copilot).
  • AI traffic measurement — Counts visitors arriving from ChatGPT, Perplexity, Copilot, Gemini and Claude, and logs AI crawler visits. All data stays in your site’s database.
  • XML sitemap — Generates and updates an XML sitemap.
  • Per-post TOC toggle — Show or hide the table of contents per post from a meta box in the editor.

These features run entirely on your site and never contact any external server. The only exception is the IndexNow notification, which is off by default and, when you enable it, sends the URL of published posts to api.indexnow.org (see External Services).

Multilingual

  • Admin interface in English and Japanese — the plugin follows your WordPress site language automatically, and you can override it (Auto / English / Japanese) in the settings.
  • AI articles in 8 languages — generate articles, topic ideas and keyword lists in English, Japanese, Chinese (Simplified), Korean, Spanish, French, German or Portuguese, independently of the admin language.
  • Front-end output (table of contents, related posts, reading time) follows your site language.

Optional: AI article generation (requires an external account)

The AI features connect to an external service (api-position.com) that performs the generation on its own servers. They require an account, which you can get at api-position.com. A free trial is available.

  • AI article generation in 8 languages via Claude / ChatGPT / Gemini (processing happens on the external service)
  • Article refresh — rewrite an existing post with up-to-date information and an answer-first structure, keeping the title and URL. One click per article, or automatically once a week for the oldest stale post.
  • Keyword and topic suggestions
  • AI featured-image generation
  • Scheduled auto-posting (choose weekday and time)
  • Google Search Console integration (search queries, indexing, sitemap submission)
  • Site learning for internal-link optimization

The AI features are provided as an interface to the external service. The service, the data it receives, and its Terms of Use and Privacy Policy are documented below.

External Services

This plugin connects to api-position.com (operated by Art Position) only when you use the AI features (license verification and AI generation). The free features listed above never connect to any external server, with one opt-in exception: IndexNow notifications, described below.

IndexNow (optional, off by default): If you enable “IndexNow notification” in Settings AI search, the plugin sends the URL of a post when it is published or updated, together with your site’s IndexNow key, to api.indexnow.org — the shared endpoint of the IndexNow initiative (co-founded by Microsoft Bing) that notifies participating search engines about new and updated content. No other data is sent. See https://www.indexnow.org/ for the protocol and https://privacy.microsoft.com/privacystatement for Microsoft’s privacy statement.

Service: https://api-position.com

What is sent, and when:

  • Your license key and site domain — sent during license verification.
  • Keywords and the site information you enter — sent only when you run AI generation.

What the service does: It performs the AI article/image generation on its own servers (this processing cannot be done locally in the plugin) and returns the result. AI generation requests are forwarded through api-position.com to Anthropic Claude, OpenAI (ChatGPT) or Google Gemini.

By using the AI features you agree to the service’s terms:

  • Privacy Policy: https://api-position.com/privacy
  • Terms of Service: https://api-position.com/terms

Screenshots

Installation

  1. Upload the plugin files to the /wp-content/plugins/ap-writer directory, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the “Plugins” screen in WordPress.
  3. Article design, table of contents, structured data and the sitemap are enabled automatically on activation — no configuration required.
  4. Go to “AP Writer” “Settings” in the admin menu to customize styles and display options.
  5. To use the optional AI features, enter your license key in “Settings” “License”. You can get a key at api-position.com.

FAQ

Which features work without an account?

Article design, table of contents, related posts, reading time, last-updated date, JSON-LD structured data and the XML sitemap all work for free, with no account and no external connection.

How do I try the AI generation?

Sign up for the free trial at api-position.com, then paste the issued key into “Settings” “License”. The AI features will be enabled.

Which languages are supported?

The admin interface is available in English and Japanese and follows your site language automatically (you can also pin it in the settings). AI articles can be generated in 8 languages: English, Japanese, Chinese (Simplified), Korean, Spanish, French, German and Portuguese — choose the output language in Settings Article settings.

Which AI models are used?

Anthropic Claude (Sonnet/Opus), OpenAI ChatGPT (GPT-5.6) and Google Gemini / OpenAI GPT Image for featured images. You can choose the models in the settings. Generation runs on the external service (api-position.com), not on your site.

Will the sitemap conflict with my existing sitemap?

No. This plugin serves its sitemap at /ap-sitemap.xml, so it does not conflict with the /sitemap.xml produced by Yoast SEO, All in One SEO, or similar plugins.

Can I hide the table of contents on a specific post?

Yes. Use the meta box in the post editor to show or hide the table of contents per post.

What structured data is output?

BlogPosting schema (title, author, published/updated dates, featured image), plus FAQPage schema generated from any FAQ section detected in the post.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“AP Writer” is open source software. The following people have contributed to this plugin.

Contributors

Translate “AP Writer” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.1.33

  • New (opt-in, off by default): a small “Powered by AP Writer” credit at the end of articles. The link is rel=”nofollow sponsored” per Google’s widget-link guidelines and carries your referral code, so paid signups through it count toward your referral bonus.
  • A generator meta tag is now output for technology-stack directories (no version number disclosed).

1.1.32

  • Fixed: the “not tested with your version of WordPress” notice could appear even though the plugin is tested, because compatibility info was missing when running the latest version and version data was cached for up to 12 hours. The plugin now always reports its tested WordPress version, and “Check again” on the Updates screen refreshes the cache immediately.

1.1.31

  • WordPress 7.1 compatibility confirmed (no jQuery UI or block-editor API dependencies; the classic meta box and all hooks used are unaffected by 7.1 changes).

1.1.30

  • Keyword auto-generation now uses the same text model as article generation (the model selected in Article settings), instead of a fixed server-side default.

1.1.29

  • The auto-generation schedule now inherits the Article-settings defaults (post status, length, featured-image on/off) as its initial values until you save the schedule settings for the first time. Saved schedule settings are unaffected.

1.1.28

  • Fixed: in the keyword auto-generation dialog, confirming a Japanese IME conversion with Enter no longer starts generation immediately.

1.1.27

  • Fixed: article decorations (in-content featured image, table of contents, related posts, reading time) were not applied on themes that render post content outside the standard loop (custom queries or direct filter application). A fallback path now handles such themes, with layered safeguards so decorations are still applied exactly once per request and never to excerpts, feeds, the REST API or other posts’ content. Standard themes are unaffected.

1.1.26

  • New: automatic NOINDEX for articles with no search traffic (Settings AI search). Requires Google Search Console. Only articles that have already been through a content refresh and still show zero search impressions after a grace period (30/60/90/180 days, your choice) are set to NOINDEX — at most one per week. If an article starts getting impressions again, NOINDEX is removed automatically the following week; you can also remove it manually from the Articles list at any time. Works with All in One SEO, Yoast SEO and Rank Math if installed, or a plain robots meta tag otherwise; NOINDEXed articles are excluded from the sitemap and llms.txt.

1.1.25

  • Automatic content refresh now prioritizes articles using Google Search Console data when connected: it picks the article with the most room to climb the rankings (high impressions, just outside the top results) instead of always picking the oldest one. Falls back to oldest-first when Search Console isn’t connected.

1.1.24

  • The AI model selector on the generate screen now shows approximate point costs per article for each model.

1.1.23

  • ChatGPT (OpenAI) support: article generation with GPT-5.6 Terra (standard, low cost) and GPT-5.6 Sol (high quality), and featured images with GPT Image 2 / 1.5 / 1 Mini — selectable alongside the existing Claude and Gemini models.
  • Fixed the selected text model not being sent correctly from the generate screen for model IDs containing dots.

1.1.22

  • Claude Sonnet 5 is now available for article generation and is the default for new installs (same point cost as Sonnet 4.6). Existing saved model settings are unchanged.
  • Opus 4.7 point costs corrected: an outdated price-table entry (from the Opus 4.1 era) was charging about 3x the intended “actual cost x 10” rule. Opus articles now use roughly 1/3 as many points (approx. 160 pt for a 2,500-character article).

1.1.21

  • Featured-image generation fixed: Google retired the Imagen models from the Gemini API, which silently broke image generation. Image models are now the current Gemini image models (3.1 Flash / 3 Pro / 3.1 Flash Lite / 2.5 Flash); saved Imagen settings are migrated automatically and old plugin versions are remapped on the server.
  • Fixed the manually selected image model not being sent correctly from the generate screen (model IDs containing dots were mangled).
  • Point estimates for image generation updated to current model pricing.

1.1.20

  • Article refresh: update an existing post with the latest information via AI — from the Articles list (“Refresh with AI”) or automatically once a week for the oldest stale post (Settings AI search). The title and URL are kept; the body is rewritten with an answer-first structure and current information.
  • AI traffic measurement: counts visitors arriving from ChatGPT, Perplexity, Copilot, Gemini and Claude (works behind page caches) and logs AI crawler visits. Data is stored only in your site’s database.
  • Generated articles now follow an AI-search-optimized structure: a conclusion-first opening (with a definition sentence for concept topics), answer-first sections, question-style headings and comparison tables where appropriate, without inventing statistics.
  • The Articles list now shows the last-updated date.

1.1.19

  • New “AI search” settings tab with LLMO (AI search optimization) tools:
  • Organization structured data on the front page, with official profile links (sameAs) that are also listed in llms.txt.
  • robots.txt checker that shows whether major AI crawlers (ChatGPT, Claude, Perplexity, Bing, Google) can access your site, plus an optional policy to explicitly allow AI search crawlers and/or block AI training crawlers.
  • Optional IndexNow notifications to Bing when posts are published or updated (off by default; ChatGPT search and Copilot rely on the Bing index).
  • Article schema now includes publisher logo, sameAs, language and mainEntityOfPage.

1.1.18

  • Generated articles now fill in standard SEO fields: the AI meta description is saved as the post excerpt, the featured image gets alt text, and 3-5 tags are added automatically.
  • If All in One SEO, Yoast SEO or Rank Math is installed, the focus keyword and meta description are written to it automatically.

1.1.17

  • The admin interface is now fully translatable and ships with English and Japanese. It follows the site language by default and can be overridden in Settings.
  • New “Article output language” setting: AI articles, topic and keyword suggestions can now be generated in Japanese, English, Chinese (Simplified), Korean, Spanish, French, German or Portuguese.

1.1.16

  • Output escaping and input handling brought fully in line with WordPress coding standards.

1.1.15

  • Internal-link insertion is no longer restricted by plan; it works whenever enabled.
  • Admin scripts and styles are now enqueued via the WordPress API.
  • Coding-standards and escaping improvements throughout the admin screens.

1.1.14

  • WordPress 7.0 compatibility.
  • Hardened admin input handling to follow WordPress coding standards.

1.1.13

  • Security: safely handle HTML, images and structured data returned by the service (prevents arbitrary file writes and stored XSS).
  • Added a per-post table-of-contents toggle in the editor.
  • Capped the auto-generation keyword list to prevent unbounded growth.
  • Fixed a case where a skipped test run was shown as success.

1.1.12

  • Block the screen during a scheduled test run to prevent double submissions.
  • Security hardening for HTML and images returned by the service.

1.1.11

  • Added a default article length option in the settings.

1.1.10

  • Added a modal to specify a theme when auto-generating keywords.

1.1.9

  • Keyword and topic generation now reflect your site information.

1.1.8

  • Weekday keyword lists are no longer consumed; an unused keyword is chosen at random.

1.1.7

  • Detect expired Google Search Console connections and prompt to reconnect.

1.1.6

  • Prevent duplicate keywords in auto-generation; fixed AI topic selection.

1.1.5

  • Show the cause of API communication errors in the admin screen.

1.1.3

  • Added a copyright-safe mode for featured images.

1.1.2

  • Fixed issues in site learning, topic suggestions and article generation.

1.1.0

  • Made the table of contents, article design, structured data and related posts available for free.
  • Added a free-trial notice for unlicensed sites.
  • Added a referral bonus feature.
  • PHP 7.4 compatibility fixes.

1.0.0

  • Initial release.