{"id":340807,"date":"2026-07-16T06:20:17","date_gmt":"2026-07-16T06:20:17","guid":{"rendered":"https:\/\/ja.wordpress.org\/plugins\/ap-writer\/"},"modified":"2026-09-14T04:53:29","modified_gmt":"2026-09-14T04:53:29","slug":"ap-writer","status":"publish","type":"plugin","link":"https:\/\/nb.wordpress.org\/plugins\/ap-writer\/","author":23499578,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.33","stable_tag":"1.1.33","tested":"7.1.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"AP Writer","header_author":"Art Position","header_description":"AI\u8a18\u4e8b\u81ea\u52d5\u751f\u6210\u30d7\u30e9\u30b0\u30a4\u30f3\uff08\u30e9\u30a4\u30bb\u30f3\u30b9\u7248\uff09","assets_banners_color":"4c80ea","last_updated":"2026-09-14 04:53:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/api-position.com","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":835,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.16":{"tag":"1.1.16","author":"artposition","date":"2026-07-16 06:19:58","revision":3609747},"1.1.17":{"tag":"1.1.17","author":"artposition","date":"2026-07-17 06:50:42","revision":3611073},"1.1.18":{"tag":"1.1.18","author":"artposition","date":"2026-08-20 11:37:16","revision":3656694},"1.1.30":{"tag":"1.1.30","author":"artposition","date":"2026-08-20 11:37:16","revision":3656694},"1.1.31":{"tag":"1.1.31","author":"artposition","date":"2026-08-20 11:54:57","revision":3656742},"1.1.33":{"tag":"1.1.33","author":"artposition","date":"2026-09-14 04:53:29","revision":3694444}},"upgrade_notice":{"1.1.15":"<p>Coding-standards and compatibility improvements for the WordPress.org directory.<\/p>","1.1.14":"<p>WordPress 7.0 compatibility and admin input hardening.<\/p>","1.1.13":"<p>Important security update. Please update promptly.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3609784,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3609784,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3609784,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3609784,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.16","1.1.17","1.1.18","1.1.30","1.1.31","1.1.33"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3609784,"resolution":"1","location":"assets","locale":"","width":1280,"height":860},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3609784,"resolution":"2","location":"assets","locale":"","width":1280,"height":860},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3609784,"resolution":"3","location":"assets","locale":"","width":1280,"height":860},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3609784,"resolution":"4","location":"assets","locale":"","width":1280,"height":1000}},"screenshots":{"1":"AI article generation \u2014 enter a keyword and generate a post.","2":"Settings \u2014 customize article design styles and colors.","3":"Auto-schedule \u2014 choose weekday, time and category for automatic posting.","4":"Front end \u2014 a post with the table of contents, related posts and reading time inserted."}},"plugin_section":[],"plugin_tags":[2353,1117,186,1557,10851],"plugin_category":[55],"plugin_contributors":[271820],"plugin_business_model":[],"class_list":["post-340807","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-schema","plugin_tags-seo","plugin_tags-sitemap","plugin_tags-table-of-contents","plugin_category-seo-and-marketing","plugin_contributors-artposition","plugin_committers-artposition"],"banners":{"banner":"https:\/\/ps.w.org\/ap-writer\/assets\/banner-772x250.png?rev=3609784","banner_2x":"https:\/\/ps.w.org\/ap-writer\/assets\/banner-1544x500.png?rev=3609784","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/ap-writer\/assets\/icon-128x128.png?rev=3609784","icon_2x":"https:\/\/ps.w.org\/ap-writer\/assets\/icon-256x256.png?rev=3609784","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/ap-writer\/assets\/screenshot-1.png?rev=3609784","caption":"AI article generation \u2014 enter a keyword and generate a post."},{"src":"https:\/\/ps.w.org\/ap-writer\/assets\/screenshot-2.png?rev=3609784","caption":"Settings \u2014 customize article design styles and colors."},{"src":"https:\/\/ps.w.org\/ap-writer\/assets\/screenshot-3.png?rev=3609784","caption":"Auto-schedule \u2014 choose weekday, time and category for automatic posting."},{"src":"https:\/\/ps.w.org\/ap-writer\/assets\/screenshot-4.png?rev=3609784","caption":"Front end \u2014 a post with the table of contents, related posts and reading time inserted."}],"raw_content":"<!--section=description-->\n<p><strong>AP Writer<\/strong> improves the SEO and reading experience of your WordPress posts. The core features work for free, with no account and no external connection.<\/p>\n\n<h4>Features available for free (no account required)<\/h4>\n\n<ul>\n<li><strong>Article design<\/strong> \u2014 Configure H2\/H3 heading styles and colors, list and bold styles, font size and line height from the admin screen.<\/li>\n<li><strong>Table of contents<\/strong> \u2014 Automatically detects H2\/H3 headings and inserts an accordion-style table of contents at the top of each post.<\/li>\n<li><strong>Related posts<\/strong> \u2014 Displays related posts from the same category as a thumbnail grid at the end of each post.<\/li>\n<li><strong>Reading time &amp; last-updated date<\/strong> \u2014 Shows post meta information near the top of the content.<\/li>\n<li><strong>JSON-LD structured data<\/strong> \u2014 Outputs BlogPosting and FAQPage schema automatically for Google rich results.<\/li>\n<li><strong>AI search (LLMO) tools<\/strong> \u2014 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).<\/li>\n<li><strong>AI traffic measurement<\/strong> \u2014 Counts visitors arriving from ChatGPT, Perplexity, Copilot, Gemini and Claude, and logs AI crawler visits. All data stays in your site's database.<\/li>\n<li><strong>XML sitemap<\/strong> \u2014 Generates and updates an XML sitemap.<\/li>\n<li><strong>Per-post TOC toggle<\/strong> \u2014 Show or hide the table of contents per post from a meta box in the editor.<\/li>\n<\/ul>\n\n<p>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).<\/p>\n\n<h4>Multilingual<\/h4>\n\n<ul>\n<li><strong>Admin interface in English and Japanese<\/strong> \u2014 the plugin follows your WordPress site language automatically, and you can override it (Auto \/ English \/ Japanese) in the settings.<\/li>\n<li><strong>AI articles in 8 languages<\/strong> \u2014 generate articles, topic ideas and keyword lists in English, Japanese, Chinese (Simplified), Korean, Spanish, French, German or Portuguese, independently of the admin language.<\/li>\n<li>Front-end output (table of contents, related posts, reading time) follows your site language.<\/li>\n<\/ul>\n\n<h4>Optional: AI article generation (requires an external account)<\/h4>\n\n<p>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 <a href=\"https:\/\/api-position.com\">api-position.com<\/a>. A free trial is available.<\/p>\n\n<ul>\n<li>AI article generation in 8 languages via Claude \/ ChatGPT \/ Gemini (processing happens on the external service)<\/li>\n<li>Article refresh \u2014 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.<\/li>\n<li>Keyword and topic suggestions<\/li>\n<li>AI featured-image generation<\/li>\n<li>Scheduled auto-posting (choose weekday and time)<\/li>\n<li>Google Search Console integration (search queries, indexing, sitemap submission)<\/li>\n<li>Site learning for internal-link optimization<\/li>\n<\/ul>\n\n<p>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.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>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.<\/p>\n\n<p><strong>IndexNow (optional, off by default):<\/strong> If you enable \"IndexNow notification\" in Settings \u2192 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 \u2014 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.<\/p>\n\n<p><strong>Service:<\/strong> https:\/\/api-position.com<\/p>\n\n<p><strong>What is sent, and when:<\/strong><\/p>\n\n<ul>\n<li>Your license key and site domain \u2014 sent during license verification.<\/li>\n<li>Keywords and the site information you enter \u2014 sent only when you run AI generation.<\/li>\n<\/ul>\n\n<p><strong>What the service does:<\/strong> 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.<\/p>\n\n<p>By using the AI features you agree to the service's terms:<\/p>\n\n<ul>\n<li>Privacy Policy: https:\/\/api-position.com\/privacy<\/li>\n<li>Terms of Service: https:\/\/api-position.com\/terms<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/ap-writer<\/code> directory, or install the plugin through the WordPress plugins screen directly.<\/li>\n<li>Activate the plugin through the \"Plugins\" screen in WordPress.<\/li>\n<li>Article design, table of contents, structured data and the sitemap are enabled automatically on activation \u2014 no configuration required.<\/li>\n<li>Go to \"AP Writer\" \u2192 \"Settings\" in the admin menu to customize styles and display options.<\/li>\n<li>To use the optional AI features, enter your license key in \"Settings\" \u2192 \"License\". You can get a key at api-position.com.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"which%20features%20work%20without%20an%20account%3F\"><h3>Which features work without an account?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"how%20do%20i%20try%20the%20ai%20generation%3F\"><h3>How do I try the AI generation?<\/h3><\/dt>\n<dd><p>Sign up for the free trial at <a href=\"https:\/\/api-position.com\">api-position.com<\/a>, then paste the issued key into \"Settings\" \u2192 \"License\". The AI features will be enabled.<\/p><\/dd>\n<dt id=\"which%20languages%20are%20supported%3F\"><h3>Which languages are supported?<\/h3><\/dt>\n<dd><p>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 \u2014 choose the output language in Settings \u2192 Article settings.<\/p><\/dd>\n<dt id=\"which%20ai%20models%20are%20used%3F\"><h3>Which AI models are used?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"will%20the%20sitemap%20conflict%20with%20my%20existing%20sitemap%3F\"><h3>Will the sitemap conflict with my existing sitemap?<\/h3><\/dt>\n<dd><p>No. This plugin serves its sitemap at <code>\/ap-sitemap.xml<\/code>, so it does not conflict with the <code>\/sitemap.xml<\/code> produced by Yoast SEO, All in One SEO, or similar plugins.<\/p><\/dd>\n<dt id=\"can%20i%20hide%20the%20table%20of%20contents%20on%20a%20specific%20post%3F\"><h3>Can I hide the table of contents on a specific post?<\/h3><\/dt>\n<dd><p>Yes. Use the meta box in the post editor to show or hide the table of contents per post.<\/p><\/dd>\n<dt id=\"what%20structured%20data%20is%20output%3F\"><h3>What structured data is output?<\/h3><\/dt>\n<dd><p>BlogPosting schema (title, author, published\/updated dates, featured image), plus FAQPage schema generated from any FAQ section detected in the post.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.33<\/h4>\n\n<ul>\n<li>New: an optional credit line at the end of articles.<\/li>\n<\/ul>\n\n<h4>1.1.32<\/h4>\n\n<ul>\n<li>Fixed: the update check display.<\/li>\n<\/ul>\n\n<h4>1.1.31<\/h4>\n\n<ul>\n<li>WordPress 7.1 support.<\/li>\n<\/ul>\n\n<h4>1.1.30<\/h4>\n\n<ul>\n<li>Changed: keyword generation now follows the article generation settings.<\/li>\n<\/ul>\n\n<h4>1.1.29<\/h4>\n\n<ul>\n<li>Changed: the auto-generation schedule inherits its defaults from the article settings.<\/li>\n<\/ul>\n\n<h4>1.1.28<\/h4>\n\n<ul>\n<li>Fixed: keyword input.<\/li>\n<\/ul>\n\n<h4>1.1.27<\/h4>\n\n<ul>\n<li>Fixed: the table of contents and related posts not appearing with some themes.<\/li>\n<\/ul>\n\n<h4>1.1.26<\/h4>\n\n<ul>\n<li>New: automatically remove articles with no traffic from search results.<\/li>\n<\/ul>\n\n<h4>1.1.25<\/h4>\n\n<ul>\n<li>Improved: which article is refreshed first.<\/li>\n<\/ul>\n\n<h4>1.1.24<\/h4>\n\n<ul>\n<li>New: an estimate of the points an article will use, shown on the generation screen.<\/li>\n<\/ul>\n\n<h4>1.1.23<\/h4>\n\n<ul>\n<li>New: more generation models to choose from.<\/li>\n<li>Fixed: the model selected on the generation screen.<\/li>\n<\/ul>\n\n<h4>1.1.22<\/h4>\n\n<ul>\n<li>Changed: the generation model line-up and the points they use.<\/li>\n<\/ul>\n\n<h4>1.1.21<\/h4>\n\n<ul>\n<li>Fixed: featured image generation.<\/li>\n<\/ul>\n\n<h4>1.1.20<\/h4>\n\n<ul>\n<li>New: update an existing article with AI.<\/li>\n<li>New: scheduled refresh.<\/li>\n<\/ul>\n\n<h4>1.1.19<\/h4>\n\n<ul>\n<li>New: an \"AI search\" settings tab, with output and diagnostics for AI search engines.<\/li>\n<\/ul>\n\n<h4>1.1.18<\/h4>\n\n<ul>\n<li>Changed: SEO information from generated articles is also saved to the standard fields.<\/li>\n<li>New: automatic hand-off to the major SEO plugins.<\/li>\n<\/ul>\n\n<h4>1.1.17<\/h4>\n\n<ul>\n<li>New: English and Japanese admin interface, and a choice of article output language.<\/li>\n<\/ul>\n\n<h4>1.1.16<\/h4>\n\n<ul>\n<li>Changed: output escaping and input handling follow the WordPress coding standards.<\/li>\n<\/ul>\n\n<h4>1.1.15<\/h4>\n\n<ul>\n<li>Removed: the plan restriction on internal links.<\/li>\n<\/ul>\n\n<h4>1.1.14<\/h4>\n\n<ul>\n<li>WordPress 7.0 support.<\/li>\n<\/ul>\n\n<h4>1.1.13<\/h4>\n\n<ul>\n<li>New: show or hide the table of contents per post.<\/li>\n<\/ul>\n\n<h4>1.1.12<\/h4>\n\n<ul>\n<li>Fixed: double submission while a schedule test run is in progress.<\/li>\n<\/ul>\n\n<h4>1.1.11<\/h4>\n\n<ul>\n<li>New: choose the default article length.<\/li>\n<\/ul>\n\n<h4>1.1.10<\/h4>\n\n<ul>\n<li>New: give keyword generation a theme to work from.<\/li>\n<\/ul>\n\n<h4>1.1.9<\/h4>\n\n<ul>\n<li>Fixed: keyword and topic generation now reflects your site information.<\/li>\n<\/ul>\n\n<h4>1.1.8<\/h4>\n\n<ul>\n<li>Changed: per-weekday keywords are no longer used up.<\/li>\n<\/ul>\n\n<h4>1.1.7<\/h4>\n\n<ul>\n<li>Fixed: detecting an expired Search Console connection.<\/li>\n<\/ul>\n\n<h4>1.1.6<\/h4>\n\n<ul>\n<li>Fixed: duplicate keywords in auto-generation.<\/li>\n<\/ul>\n\n<h4>1.1.5<\/h4>\n\n<ul>\n<li>Improved: connection errors now explain the cause in the admin screen.<\/li>\n<\/ul>\n\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>Fixed: automatic updates now always run.<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>New: copyright-safe mode for featured images.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Fixed: site learning, topic suggestions and article generation.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>New: llms.txt support.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>New: Search Console integration, auto-generation schedule and expanded design settings.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Article design, TOC, JSON-LD schema and XML sitemap \u2014 plus optional AI article generation in 8 languages. English and Japanese admin UI.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/340807","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=340807"}],"author":[{"embeddable":true,"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/artposition"}],"wp:attachment":[{"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=340807"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=340807"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=340807"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=340807"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=340807"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/nb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=340807"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}