Skip to content

ehonep/wordpress-seo-audit-toolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

WordPress SEO Audit Toolkit

WordPress PHP SEO License: MIT Rank Math Yoast

Automated technical SEO audits for WordPress sites. Checks 50+ SEO factors and generates actionable reports.

Stop guessing why your WordPress site isn't ranking. This toolkit gives you a complete, data-driven picture of every technical SEO issue on your site — from missing title tags to broken redirect chains — and tells you exactly what to fix and in what order.


Features

  • 50+ automated SEO checks across technical, on-page, and content dimensions
  • JSON report output for integration with dashboards, Slack, or CI/CD pipelines
  • Schema.org validator supporting 8 structured data types with error/warning levels
  • Content quality analysis — thin content, duplicate metadata, keyword stuffing detection
  • Rank Math Pro configurator — apply agency-grade settings in seconds
  • Yoast → Rank Math migration with dry-run mode and full change logging
  • Client-ready report template — copy, fill scores, deliver
  • Works with any WordPress installation (WP 5.0+, PHP 7.4+)
  • No external API keys required for core audits

Quick Start

1. Clone the repository

git clone https://github.com/yourusername/wordpress-seo-audit-toolkit.git
cd wordpress-seo-audit-toolkit

2. Run the technical SEO audit

# Place in your WordPress root or run via WP-CLI
php audit/technical-seo-checker.php --url=https://yoursite.com --output=report.json

3. Validate schema markup

php audit/schema-validator.php --url=https://yoursite.com/sample-page/

4. Check content quality across the site

php audit/content-quality-checker.php --sitemap=https://yoursite.com/sitemap.xml

5. Configure Rank Math Pro (run inside WordPress)

wp eval-file scripts/rank-math-config.php

6. Migrate Yoast to Rank Math (dry run first!)

# Dry run — no changes written
wp eval-file scripts/yoast-to-rankmath-migration.php -- --dry-run

# Live migration
wp eval-file scripts/yoast-to-rankmath-migration.php

What It Checks

Technical SEO (audit/technical-seo-checker.php)

Check What We Validate
Title Tags Presence, length (30–60 chars), duplicates across pages
Meta Descriptions Presence, length (120–158 chars), uniqueness
H1 Tags Missing H1, multiple H1s per page, duplicates site-wide
Canonical Tags Present, self-referencing, no canonical chains
robots.txt Accessible, not blocking critical resources, valid syntax
XML Sitemap Exists, valid XML, submitted to Search Console, max 50k URLs
SSL / HTTPS Full site HTTPS, mixed content detection
Open Graph og:title, og:description, og:image (min 1200x630px)
Schema Markup JSON-LD present, valid type, required properties
Image Alt Text Coverage rate, missing alts on above-fold images
Internal Links Orphan pages, broken internal links, link depth
404 Errors Crawled 404s, soft 404s
Redirect Chains Chains >2 hops, redirect loops
Mobile Viewport viewport meta tag present and correct
Page Speed Server response time, resource count estimates
Hreflang Present for multilingual sites, correct lang codes, return links

Schema Validation (audit/schema-validator.php)

Validates JSON-LD blocks against Schema.org specs for:

  • Organization / LocalBusiness
  • Article / BlogPosting
  • Product
  • FAQPage
  • BreadcrumbList
  • WebPage / WebSite

Content Quality (audit/content-quality-checker.php)

  • Word count per page, thin content flagging (<300 words)
  • Duplicate title tags and meta descriptions
  • Heading hierarchy violations (H2 before H1, skipped levels)
  • Keyword density analysis and stuffing detection (>3% density)
  • Internal link density per page
  • Orphan page detection

Output Format

All audit scripts output structured JSON:

{
  "audit_date": "2026-04-25T10:30:00Z",
  "site_url": "https://yoursite.com",
  "score": 74,
  "summary": {
    "critical": 3,
    "warnings": 11,
    "passed": 38
  },
  "issues": [
    {
      "check": "meta_description",
      "status": "critical",
      "message": "23 pages missing meta description",
      "affected_urls": ["https://yoursite.com/page/", "..."],
      "recommendation": "Add unique meta descriptions of 120-158 characters to all pages."
    }
  ]
}

Use this JSON to feed into:

  • Google Data Studio / Looker Studio dashboards
  • Slack webhook notifications
  • GitHub Actions / CI pipelines
  • Client reporting tools

Requirements

Requirement Version
WordPress 5.0+
PHP 7.4+ (8.x recommended)
WP-CLI 2.0+ (for migration scripts)
PHP Extensions curl, dom, json, libxml
Rank Math Pro 3.x (for rank-math-config.php)

File Structure

wordpress-seo-audit-toolkit/
├── audit/
│   ├── technical-seo-checker.php     # 50+ technical SEO checks
│   ├── schema-validator.php          # JSON-LD / Schema.org validator
│   └── content-quality-checker.php  # Content & on-page analysis
├── scripts/
│   ├── rank-math-config.php          # Rank Math Pro configurator
│   └── yoast-to-rankmath-migration.php # Yoast → Rank Math migration
├── templates/
│   └── seo-audit-report.md           # Client-facing report template
└── README.md

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Ensure all new checks include:

  • A clear status level (critical, warning, passed)
  • A human-readable message
  • An affected_urls array
  • A recommendation string

License

MIT License — see LICENSE for details.

Free to use commercially. Attribution appreciated but not required.


Built for WordPress agencies, freelance SEO consultants, and site owners who want real answers — not generic checklists.

About

Automated technical SEO audits for WordPress — checks 50+ factors and generates actionable reports

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages