Ad Generator WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA
A professional-grade text randomizer and ad generator by @AiratTop — perfect for creating unique, human-readable content at scale. Moved to https://random.airat.top
Install
Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/airattop/ad-generator/releases/download/v2.3.0/ad-generator-v2.3.0.zipAd Generator
- Contributors: AiratTop
- Requires WordPress: 7.0+
- Requires PHP: 8.3+
- Version: 2.3.0
- License: Apache-2.0
- License URI: https://www.apache.org/licenses/LICENSE-2.0
Professional text randomizer and ad generator by AiratTop.
Description
Professional text randomizer and ad generator by AiratTop.
Installation
- Go to 'Plugins > Add New'
- Click 'Upload Plugin'
- Upload the 'ad-generator.zip' file
- Activate Ad Generator on your Plugins page
- Add the
[ad_generator]shortcode to a WordPress page
Setup
- Create a new WordPress page, insert
[ad_generator]shortcode, and save - Visit the page and use the ad generator
- Enjoy!
Screenshots
In Russian:

In English:

Process GIF:

Documentation
What is a text randomizer?
A tool for industrial-level generation of pseudo-unique content. Often used when submitting a website to multiple directories — each listing gets a unique description from a search engine's perspective. Unlike typical synonymizers or content generators (doorway tools), this one preserves readability.
How it works
Start with a base text, e.g.:
Some believe that both copywriting (writing texts) and rewriting (reworking existing ones) can successfully be entrusted to a text randomizer — a special program.
Apply the randomization syntax:
- If "text 1" can be replaced with "text 2" or "text 3", wrap with:
{text 1|text 2|text 3} - If "text" is optional, use:
{|text} - If the sequence "text 1 text 2 text 3" can be shuffled, use:
[text 1|text 2|text 3] - For comma-separated shuffle:
[+,+text 1|text 2|text 3] - For paragraph shuffle:
paragraph1|paragraph2|paragraph3 - To escape special characters (
{, }, |, [, ], +, \), use:\{, \}, \|, \[, \], \+, \\ - To insert a random digit (0–9): use
%rand%
Instructions support unlimited nesting.
Quick example:
{{Some|Many|There is a} belief|{Some|Many} think} that
[+and+
{copywriting (writing texts)|writing texts (copywriting)|writing texts|copywriting}
|{rewriting (reworking texts)|reworking texts (rewriting)|reworking texts|rewriting}
] [{|can successfully}|can] be entrusted to
[+–+{a text randomizer|a randomizer of {|texts|content}}|a {special|dedicated} {program|tool}]
.
This code can generate 24,576 unique variations, such as:
Many believe that copywriting and rewriting (reworking texts) can successfully be entrusted to a dedicated tool — a randomizer.
or
Some think that reworking texts and writing can be entrusted to a text randomizer — a special program.
To summarize:
{text 1|text 2|text 3}– alternatives[text 1|text 2|text 3]– permutations[+delimiter+text 1|text 2|text 3]– permutations with delimiter- Special character escaping:
\{, \}, \|, \[, \], \+, \\ %rand%returns a random number (0–9)- Supports nested instructions
Command-line version
You can run the script via CLI, without installing the WordPress plugin — faster and unrestricted.
Run the file ad-generator-cli.php as a regular PHP script, passing the input template file, number of outputs, and (optionally) output file:
Example command:
php ad-generator-cli.php -n 300 -f template.txt -o result.txt
Where:
-nor-N– number of output variants (default: 300)-for--file– template file (required)-oor--out– output file (default:result-N.txt)-hor--help– show help
The CLI can be called from any working directory. Output paths remain relative to the current working directory, so make sure it is writable.
Template Examples
Ad example for “Apartment Renovation” niche:
Title:
Turnkey renovation of {apartments|offices|cottages}. Warranty, {team|quality}
Body:
A team of {highly qualified|experienced|reliable} {repairmen|workers|craftsmen} will {perform|carry out} a {quality|professional} renovation of {your apartment|your home|your residence} at a {reasonable|affordable} {price|cost}. {We offer|We provide|Why us|Choose us|Contact us}:
— {Bulk purchase of materials at {wholesale|discounted} {prices|rates}|All types of work done in {short|minimal} time}.
— {{All|Our} {workers|repairmen} are citizens of the Russian Federation|{Experience|Tenure} of {all|our} {workers|staff|builders} – {5|6|7} years}.
— Warranty on {all types of work|{any|completed} work} for {1|2|3} years.
— {{All|Any} types of {repair|finishing|construction} work {of any complexity|“from A to Z”|turnkey}.|Free visit of a {specialist|measurer} for consultation and measurements.}
{===|* * *|***|# # #|~ ~ ~|- — -|___}
{->>|=>|>>|->} ONLY until %DATE — get a DISCOUNT on turnkey {apartment|room|property} renovation – {15|20|10}%!!!
{✆|☏|►} {CALL US|PHONE|CALL NOW|Book a FREE estimate}: %PHONE
More examples:
Days of the week:
{Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday}
or
{Mon|Tue|Wed|Thu|Fri|Sat|Sun}
Months:
{January|February|March|April|May|June|July|August|September|October|November|December}
Days of the month:
{{|1|2}{0|1|2|3|4|5|6|7|8|9}|30|31}
or
{1|2|...|31}
Numbers (0–9):
{1|2|3|4|5|6|7|8|9|0}
or
%rand%
Two-digit numbers (10–99):
{1|2|3|4|5|6|7|8|9}%rand%
English alphabet:
{A|B|C|D|...|Z}
Russian alphabet:
{А|Б|В|...|Я}
Sky’s the limit — you're only bound by your imagination!
Changelog
License
The original source code and technical documentation in this repository are licensed under the Apache License 2.0, with copyright and third-party details in NOTICE.
WordPress (installed through johnpbloch/wordpress) and Composer Installers are third-party
components distributed under their own licenses. Apache-2.0 is compatible with GPLv3; applicable
GPL terms continue to govern WordPress and any combined distribution.
Author
AiratTop (Airat Halitov)
- Website: airat.top
- GitHub: @AiratTop
- Email: mail@airat.top
- Repository: ad-generator
Releases
17 releases. Each count is every asset in that release; expand a row for the breakdown.
Active-site estimate ≈50 comes from the median of recent superseded releases. Method.