
CyberSEO Pro, RSS Retriever, and AI Autoblogger all serve the same purpose – they populate websites with new posts imported from feeds or generated by a neural network. However, any website that has been around for at least a couple of years faces another problem: its archive. These archives contain hundreds or thousands of posts written long ago that were imported with incorrect formatting. They contain outdated facts, junk tags, and broken images from third-party servers. They lack meta descriptions and internal links and have no category other than “Uncategorized”. Rewriting such an archive manually is impossible, and most bulk editing tools for WordPress can only perform a search-and-replace or run AI directly from an open browser tab, which crashes at the first timeout.
Bulk Post Editor was created specifically for this purpose. It’s a plugin that processes existing WordPress posts in the background in batches. You select the posts, build a processing pipeline of steps in which bots and AI models work together, click “Start”, and close your browser. WP-Cron takes care of the rest. Posts are worked through the queue. The process resumes after any interruption. Every change can be undone with a single click.

A pipeline, not a set of buttons
The main idea behind the Bulk Post Editor is that processing a post involves a sequence of steps, and the order of those steps matters. There’s no point in feeding the neural network text cluttered with inline styles and shortcodes from a remote page builder because the model will waste tokens on them and most likely mess something up. Similarly, you can’t add a table of contents, ad blocks, or nofollow attributes before the AI rewrite; otherwise, the model will rewrite them.
That’s why the plugin’s 15 steps are divided into groups and always executed in the correct order.
- Content: HTML cleanup and search-and-replace (bots), followed by AI rewriting and AI block insertion.
- SEO: meta tags, internal links, tags, and categories.
- Images: image generation, importing, and fixing existing images and post thumbnails.
- Final: synonymizer, HTML insertion, table of contents, link rules, and your own PHP code. In other words, this group includes everything that needs to go into the post exactly as intended after the AI processing is complete.
Include only the steps you need and skip the rest. Each step modifies its own set of fields, and no two steps ever write to the same field. The pipeline concludes with post-saving rules (Output Post Rules), which include options to keep the status, publish, set a new date, assign a theme template, and save a revision.
AI under full control
Similar to AI Autoblogger, the Bulk Post Editor does not have dozens of “text style” toggles. The AI Rewriter works with your prompt written in plain language as if you were giving instructions to a human copywriter. There are built-in templates to help you get started: light editing, unique rewriting, formatting raw text, expanding thin content, shortening, updating outdated facts, SEO structure, changing tone, using simple language and a natural style, and translation. A template is just a starting point. You can rewrite the prompt however you like. With Spintax enabled, each post will receive its own set of instructions.
One important feature lacking in most AI plugins is that the model views the entire post as context, including the title, excerpt, categories, tags, SEO meta, date, and author. However, the plugin only takes the fields you’ve selected from its response, such as the title, content, excerpt, or slug. By default, it’s just the content.

Supported providers are OpenAI, Anthropic, and OpenRouter with every model it offers including Gemini, Grok, DeepSeek, Llama, Mistral, Qwen, and more. All AI tasks are executed asynchronously. OpenAI runs in the background; Anthropic uses Message Batches; and OpenRouter uses the Batch API. Direct calls are sent as separate background requests. Slow models never block processing, and batch APIs cost about half as much as regular ones. For tasks requiring up-to-date data (e.g., prices, versions, facts), there is a checkbox for live web search. You can select a model from the Quick Select list, which shows prices and limits, or enter its ID manually. Manual entry always takes priority.
If you don’t need to rewrite the post, AI Insert can help. The model generates a single new block. This can be an FAQ with schema markup, key takeaways, a conclusion, a call to action, pros and cons, a summary table, or expert advice. The plugin places this block exactly where specified, such as before the last h2 heading or after the first paragraph. When reprocessing, the block is replaced rather than duplicated. The SEO Meta step fills in the title and description for Yoast SEO, Rank Math SEO, SEOPress, The SEO Framework, and Slim SEO. It does so either using AI or for free, directly from the headline and beginning of the text. Optionally, it fills in only the fields that are still empty.
Robots do robot work
Anything that can be done by a rule, Bulk Post Editor does with code, not with a neural network. It’s free, instant, and produces the same result every time.
The HTML Cleaner removes unnecessary tags and cuts out elements based on CSS-like selectors or rules in the CyberSEO Pro format. It also cleans up inline styles, empty paragraphs, and shortcodes of plugins that are no longer installed. Search & Replace works with plain text (whole words, case-sensitive and case-preserving; for example, Cat → Kitten or CAT → KITTEN) or regular expressions. By default, it leaves markup, URLs, and shortcodes untouched. The Synonymizer understands tables in the CyberSEO Pro format and helps make neural network–generated text less monotonous.
The Insert HTML feature inserts up to ten blocks (ads, affiliate disclosures, and disclaimers) with placeholders such as %post_title% and %post_url%. The Table of Contents feature generates a nested table of contents based on the final headings. The Link Rules feature applies nofollow, sponsored, or UGC attributes, sets links to open in a new tab, or removes external links, leaving only the text. If something is missing, the Custom PHP Code step will execute your code on each post before saving.
All of these steps edit the HTML as text rather than rebuilding it via a DOM parser. Therefore, Gutenberg block markup remains valid after any step, and posts from the Classic Editor won’t become disorganized.
Internal links and categories that make sense
Internal linking based on a dictionary is not a new idea. It comes with an old problem: a bot finds the word “apple” in a fruit salad recipe and links it to a review of the iPhone. In Bulk Post Editor, this problem is solved using decision models. These models are a special class on OpenRouter that don’t generate text, but rather answer questions (“Does this link fit this paragraph?”) with a probability score. The plugin finds candidates based on a dictionary, post titles, focus keywords from SEO plugins, and anchor text. It takes word forms in any language into account, and then the decision model checks each candidate in context. This process costs a fraction of a cent per post.
The AI can generate anchor text for each published post in advance and in the background. The generated anchor text is visible and editable in the meta box on the post editing page. The AI will never overwrite manually corrected anchor text. Links are never placed in headings, existing links, or code. They never lead to the post itself and do not duplicate existing links.

The same mechanism works in the Auto Terms step. Tags, categories, and terms from custom taxonomies are assigned based on existing terms and your rules. For example, a rule can point a few keywords to a term, and the term is created if it doesn’t exist yet. The decision model keeps only those that truly match the post. Posts that are stuck in “Uncategorized” are assigned to the correct category, and reprocessing does not add unnecessary tags.
Create images for each section and organize existing ones
AI Images uses an approach that is familiar to users of AI Autoblogger. The text model reads the section of the article where an image should appear and writes a description of the scene. It also keeps track of scenes that have already been used to ensure that images aren’t repeated. Then, an image generation model (GPT Image, Gemini, FLUX, or another OpenRouter model) creates the image. The plugin saves the image in WebP, JPEG, or PNG format with the appropriate compression level. Images can be inserted evenly before headings or used to replace existing ones while preserving their aspect ratios and alt text. When reprocessing a post, you’re only charged for missing images.

Image Tools organizes existing images by importing hotlinks from third-party servers into the media library using a browser-like User-Agent and Referer. If the original is no longer available, it uses the Wayback Machine. Image Tools also fills in empty alt text and sets missing width and height values. The Featured Image feature takes a thumbnail from the first image in a post. If there are no images, it generates one. For those who prefer not to host third-party images on their own server, it can connect to external thumbnails via the Featured Image from URL plugin.
Every change can be undone
It would be irresponsible to batch process thousands of posts without the ability to undo changes. Before modifying a post, the Bulk Post Editor saves a copy of the following: the title, content, excerpt, slug, status, dates, template, SEO meta, thumbnail, and terms from all taxonomies. You can roll back the last run or selected posts. Images created during processing are deleted if they are no longer in use. Posts that you manually edited after processing will not be affected by the rollback.
In addition, the plugin is gentle on your site and your budget:
- A post where no changes are needed in any step isn’t saved at all: no unnecessary revisions, and the modification date remains the same;
- Account errors (incorrect key, credits exhausted, quota exceeded) pause the engine and preserve the queue, just as a series of consecutive failed posts would;
- The limit on AI requests per hour, day, or month prevents you from spending more than planned;
- Truncated model responses are never saved;
- A post opened in the editor waits until you’re done.
The journal shows which steps changed which fields for each post or why processing failed. With a single click, it exports a full report for technical support without API keys or prompts.

Post selection and autopilot
The Posts Selection page allows you to filter posts by type, status, category, date, custom field, presence of a thumbnail or images in the text, text content, and processing history: “never processed”, “ended in an error”, or “processed N times”. The found posts are added to the queue with a single click.
Alternatively, you can skip this step. The Automation section automatically adds every new post of the selected types and categories to the queue. This feature works seamlessly with CyberSEO Pro, RSS Retriever, and AI Autoblogger. Imported or generated posts immediately go through your pipeline and receive internal links, tags, images, and meta tags. The second rule, Scheduled Refresh, takes the M oldest posts that haven’t been updated for D days and refreshes them every N days. The engine can start automatically, and the site essentially maintains its own archive.

Under the hood
The Bulk Post Editor is a single PHP file that requires no third-party libraries or dedicated database tables. All state is stored in WordPress options and post meta fields. The engine runs in short, locked WP-Cron cycles with a time limit. Therefore, a failed request, server restart, or timeout won’t cause any issues; the engine will simply resume where it left off. The number of concurrent AI tasks is configurable. Developers can use APIs and hooks to add custom steps, AI providers, and image generators.
The plugin works with any public post type in both the Classic and Block editors and supports formats familiar to CyberSEO Pro users, including %post_title% placeholders, Spintax, synonymizer tables, and rules for removing HTML elements.
Your keys, your costs
The Bulk Post Editor does not sell credits or mark up token prices. AI steps use your OpenAI, Anthropic, or OpenRouter API keys at the providers’ rates. The model is selected separately for each step. You can pick a cheap model for image scenes, anchor text and meta tags and a strong one for rewriting. A powerful model is used for rewriting. Bots are free, and link and term verification using the decision model costs less than one-tenth of a cent per post. Batch API requests save about half the cost.
The plugin itself is a one-time purchase that includes all features, free updates, and support for the product’s entire lifespan. No subscription is required. You can transfer the license to another website yourself, without contacting support. Simply release the license in the plugin settings on the old site, then register the plugin on the new one.
For details, documentation, and pricing, visit www.bulkposteditor.com.

