WordPress Themes Directory Scraper
Pricing
Pay per event
WordPress Themes Directory Scraper
Extract WordPress.org theme metadata, author leads, ratings, downloads, tags, screenshots, and compatibility data from the public directory.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Extract WordPress.org theme metadata at scale from the public WordPress Themes Directory API.
Use this actor to monitor theme competitors, discover vendors, enrich author leads, compare ratings, and track compatibility changes across the WordPress theme ecosystem.
What does WordPress Themes Directory Scraper do?
WordPress Themes Directory Scraper collects public theme records from WordPress.org.
It supports keyword searches, tag searches, browse collections, and direct theme slugs.
Each dataset item contains theme identity, author details, ratings, downloads, update dates, compatibility requirements, tags, screenshots, preview links, download links, and WordPress.org URLs.
Who is it for?
Theme developers
Find competing themes in your niche and track how their ratings, downloads, and compatibility requirements change.
WordPress agencies
Build shortlists of themes for client audits, migrations, and design research.
Plugin and SaaS vendors
Discover theme authors and vendor websites for outreach, partnership, or integration research.
Market researchers
Analyze popular WordPress theme categories, author concentration, and freshness signals.
SEO and affiliate teams
Collect structured theme metadata for comparison pages, review workflows, and market maps.
Why use this actor?
- ๐ Search themes by keyword such as
seo,restaurant, orwoocommerce. - ๐ท๏ธ Collect themes by public WordPress.org tags such as
blogorfull-site-editing. - ๐ฏ Enrich exact theme slugs such as
twentytwentyfive. - ๐ Track ratings, download totals, update dates, and compatibility fields.
- ๐ค Extract author display names, profile URLs, avatars, and vendor URLs.
- ๐ผ๏ธ Export screenshots, preview URLs, homepages, and download links.
- โก Uses the public WordPress.org API, so no browser or login is required.
Data you can extract
| Field group | Examples |
|---|---|
| Theme identity | name, slug, version, WordPress.org homepage |
| Author/vendor | username, display name, profile URL, avatar, author URL |
| Popularity | rating percent, rating average, rating count, downloads |
| Freshness | last updated date, last updated time, creation time |
| Compatibility | required WordPress version, required PHP version |
| Media and links | screenshot URL, preview URL, download URL, reviews URL |
| Classification | tag slugs and readable tag labels |
| Commercial signals | commercial/community flags and external support/repository URLs |
Example use cases
- Monitor the top 500 popular WordPress themes every week.
- Find all themes matching a product niche such as SEO, booking, LMS, or restaurant.
- Build a lead list of theme authors with profile and website URLs.
- Detect recently updated themes before launching compatibility outreach.
- Compare ratings and review counts across theme categories.
- Enrich a list of exact theme slugs from competitor research.
How much does it cost to scrape WordPress themes?
This actor uses pay-per-event pricing.
A small start event is charged once per run, and a result event is charged for each saved theme record.
The default input is intentionally small so your first test run is inexpensive.
For larger monitoring jobs, increase maxItems to the number of themes you need.
Input options
Search terms
Use searchTerms to search the WordPress.org theme directory.
Examples:
seorestaurantwoocommerceportfolioreal estate
Browse collection
Use browse to include one WordPress.org browse collection.
Supported values:
popularfeaturednewupdatedblock-themesnone
Theme tags
Use tags for WordPress.org tag filters.
Examples:
bloge-commercefull-site-editingaccessibility-readyportfolio
Theme slugs
Use themeSlugs when you already know exact WordPress.org theme slugs.
For example, the URL https://wordpress.org/themes/twentytwentyfive/ has slug twentytwentyfive.
Maximum themes
Use maxItems to control how many unique themes are saved across all inputs.
The actor deduplicates by slug.
Detailed metadata
Keep includeDetails enabled to enrich each theme with download totals, last updated dates, download links, review URLs, and full tag labels.
Disable it only when you need the fastest possible search-only run.
Example input
{"searchTerms": ["seo", "restaurant"],"browse": "popular","tags": ["blog"],"themeSlugs": ["twentytwentyfive"],"maxItems": 100,"includeDetails": true}
Example output
{"queryType": "slug","query": "twentytwentyfive","name": "Twenty Twenty-Five","slug": "twentytwentyfive","version": "1.5","homepageUrl": "https://wordpress.org/themes/twentytwentyfive/","previewUrl": "https://wp-themes.com/twentytwentyfive/","screenshotUrl": "https://ts.w.org/wp-content/themes/twentytwentyfive/screenshot.png?ver=1.5","downloadUrl": "https://downloads.wordpress.org/theme/twentytwentyfive.1.5.zip","ratingPercent": 84,"ratingAverage": 4.2,"ratingCount": 12,"downloaded": 9372740,"lastUpdated": "2026-05-20","requiresWordPress": "6.7","requiresPhp": "7.2","tags": ["blog", "full-site-editing"],"author": {"username": "wordpressdotorg","displayName": "WordPress.org","profileUrl": "https://profiles.wordpress.org/wordpressdotorg/","authorUrl": "https://wordpress.org"},"reviewsUrl": "https://wordpress.org/support/theme/twentytwentyfive/reviews/","scrapedAt": "2026-07-07T00:00:00.000Z"}
How to scrape WordPress themes
- Open the actor on Apify.
- Enter one or more search terms, tags, browse mode, or theme slugs.
- Set
maxItemsto the number of unique themes you want. - Keep
includeDetailsenabled for the richest dataset. - Run the actor.
- Export results as JSON, CSV, Excel, XML, or via API.
Tips for better results
- Use broad search terms first, then narrow with tags.
- Use direct slugs when monitoring known competitors.
- Use
browse=updatedfor freshness monitoring. - Use
browse=popularfor market-share snapshots. - Use
browse=nonewhen you only want exact searches or exact slugs. - Keep
maxItemslow for tests and increase after checking the output.
Integrations
CRM enrichment
Export author profile URLs and author websites to enrich vendor or partner lead records.
Competitive intelligence dashboards
Schedule the actor and send datasets to Google Sheets, BigQuery, Snowflake, or a BI tool.
Product marketing research
Combine theme tags, rating counts, and downloads to prioritize integration campaigns.
Content workflows
Use theme screenshots, descriptions, and compatibility data for review or comparison workflows.
API usage with Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/wordpress-themes-directory-scraper').call({searchTerms: ['seo'],browse: 'popular',maxItems: 100,includeDetails: true,});console.log(run.defaultDatasetId);
API usage with Python
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('automation-lab/wordpress-themes-directory-scraper').call(run_input={'searchTerms': ['seo'],'browse': 'popular','maxItems': 100,'includeDetails': True,})print(run['defaultDatasetId'])
API usage with cURL
curl -X POST "https://api.apify.com/v2/acts/automation-lab~wordpress-themes-directory-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"searchTerms":["seo"],"browse":"popular","maxItems":100,"includeDetails":true}'
MCP server usage
Use this actor from Claude Desktop, Claude Code, or another MCP client through Apify MCP.
MCP URL:
https://mcp.apify.com/?tools=automation-lab/wordpress-themes-directory-scraper
Add it in Claude Code with:
$claude mcp add apify-wordpress-themes https://mcp.apify.com/?tools=automation-lab/wordpress-themes-directory-scraper
Claude Desktop JSON configuration:
{"mcpServers": {"apify-wordpress-themes": {"url": "https://mcp.apify.com/?tools=automation-lab/wordpress-themes-directory-scraper"}}}
Example prompts:
- "Scrape 100 popular WordPress themes and summarize the top author websites."
- "Find SEO-related WordPress themes and rank them by rating count."
- "Monitor recently updated block themes and return those requiring WordPress 6.7+."
Scheduling
Run the actor daily, weekly, or monthly to monitor theme ecosystem changes.
For repeated monitoring, keep the same input and compare dataset exports over time using slug as the stable key.
Data freshness
The actor reads the public WordPress.org Themes API at run time.
Values such as ratings, downloads, versions, and last updated dates reflect what the API returns during the run.
Legality
This actor collects public metadata from WordPress.org theme directory endpoints.
You are responsible for using exported data lawfully, respecting applicable terms, and complying with privacy and outreach rules in your jurisdiction.
FAQ
Can I scrape WordPress themes without a login?
Yes. The actor uses public WordPress.org theme directory endpoints and does not require a WordPress.org account.
Can I monitor the same market every week?
Yes. Schedule the same input and compare exports by slug, version, ratingCount, downloaded, and lastUpdated.
Troubleshooting
Why did I get fewer themes than maxItems?
The actor deduplicates by slug. If the same theme appears in multiple sources, it is saved once.
Why did a direct slug fail?
Check that the slug exists in a WordPress.org theme URL. Invalid slugs are skipped and logged.
Why are some commercial URLs empty?
WordPress.org only exposes external support or repository URLs for themes that provide those fields.
Related scrapers
Automation Lab also offers related WordPress and web-research actors:
- https://apify.com/automation-lab/wordpress-plugin-developer-leads-scraper
- https://apify.com/automation-lab/wordpress-plugin-reviews-scraper
Output field reference
queryTypeโ input source type: slug, search, tag, or browse.queryโ exact keyword, tag, browse collection, or slug that found the theme.nameโ theme display name.slugโ stable WordPress.org theme slug.versionโ current theme version.homepageUrlโ WordPress.org theme page.previewUrlโ WordPress theme preview URL.screenshotUrlโ theme screenshot URL.downloadUrlโ ZIP download URL when available.descriptionโ public theme description.ratingPercentโ WordPress.org rating percentage.ratingAverageโ rating converted to a 0-5 average.ratingCountโ number of ratings.downloadedโ public total download count when available.lastUpdatedโ last updated date.requiresWordPressโ minimum WordPress version.requiresPhpโ minimum PHP version.tagsโ theme tag slugs.tagLabelsโ readable theme tag labels.authorโ nested author profile and website data.sourceApiUrlโ API endpoint used for traceability.scrapedAtโ ISO timestamp when the item was saved.
Changelog
0.1
Initial release with keyword, tag, browse, and direct slug collection from the public WordPress.org Themes API.