Initial commit — SEO Guidelines & SmartCrawl reference
SmartCrawl plugin reference (11 docs): - Overview, configuration, titles & meta, schema, sitemaps, social/OG, redirects, breadcrumbs, content analysis, hooks/filters, known issues SEO strategy playbook (6 docs): - Keyword research, per-page-type selection, on-page optimization, local SEO, technical SEO, content strategy Reusable templates (3): - Site audit checklist, keyword research worksheet, page optimization checklist Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,126 @@
|
||||
# Redirects
|
||||
|
||||
SmartCrawl's Redirects module manages URL redirection from within WordPress, without editing `.htaccess` or server config. Found under Advanced Tools > Redirects.
|
||||
|
||||
## Redirect Types
|
||||
|
||||
| Code | Type | When to Use |
|
||||
|------|------|-------------|
|
||||
| **301** | Permanent | Page permanently moved. Passes ~90-99% of link equity. Default choice. |
|
||||
| **302** | Temporary | Page temporarily moved. Does not pass link equity permanently. Use for A/B tests, maintenance. |
|
||||
| **307** | Temporary (method preserved) | Like 302 but preserves the HTTP method and body. Rare use case. |
|
||||
|
||||
**Default recommendation:** Always use **301** unless you have a specific reason for temporary.
|
||||
|
||||
## Creating Redirects
|
||||
|
||||
### Basic (Plain Text)
|
||||
|
||||
1. Go to SmartCrawl > Advanced Tools > Redirects
|
||||
2. Click "Add Redirect"
|
||||
3. Enter the **source URL** (old URL path, e.g., `/old-page/`)
|
||||
4. Enter the **destination URL** (new URL, e.g., `/new-page/` or full URL)
|
||||
5. Select redirect type (301/302/307)
|
||||
6. Save
|
||||
|
||||
### Regex Pattern
|
||||
|
||||
Switch to "Regex" mode for pattern-based redirects:
|
||||
|
||||
```
|
||||
Source: /blog/(\d{4})/(\d{2})/(.*)
|
||||
Destination: /blog/$3
|
||||
Type: 301
|
||||
```
|
||||
|
||||
This redirects dated blog URLs to non-dated versions.
|
||||
|
||||
**Regex tips:**
|
||||
- Test patterns on [regex101.com](https://regex101.com) before applying
|
||||
- Use capture groups `()` and backreferences `$1`, `$2`, etc.
|
||||
- Some users report regex patterns not working despite being valid — test thoroughly
|
||||
|
||||
### Wildcard Redirects
|
||||
|
||||
Use regex mode for wildcards:
|
||||
|
||||
```
|
||||
Source: /old-section/(.*)
|
||||
Destination: /new-section/$1
|
||||
Type: 301
|
||||
```
|
||||
|
||||
This redirects all URLs under `/old-section/` to `/new-section/` while preserving the path.
|
||||
|
||||
## Auto-Redirect Deleted Posts (v3.9.0+)
|
||||
|
||||
Enable this to automatically create a 301 redirect when a post or page is deleted. The redirect points to:
|
||||
- The parent page (if it was a child page)
|
||||
- The homepage (if no logical parent)
|
||||
|
||||
**Recommendation:** Enable this to prevent 404s when content is removed.
|
||||
|
||||
## Bulk Import/Export
|
||||
|
||||
### Export
|
||||
- SmartCrawl exports redirects as JSON
|
||||
- Useful for backing up redirects before changes
|
||||
|
||||
### Import
|
||||
- Import redirects from JSON file
|
||||
- Useful when migrating between sites or restoring from backup
|
||||
|
||||
### Bulk Edit
|
||||
- Change redirect types in bulk (e.g., convert all 302s to 301s)
|
||||
- Delete all redirects at once (use with caution)
|
||||
|
||||
## Pro Features
|
||||
|
||||
### Location-Based Redirects
|
||||
|
||||
With SmartCrawl Pro + MaxMind GeoIP database:
|
||||
- Redirect visitors based on their country or region
|
||||
- Example: Redirect Canadian visitors to a `.ca` domain
|
||||
- Requires MaxMind DB configuration in settings
|
||||
|
||||
## When to Use Redirects
|
||||
|
||||
| Scenario | Action |
|
||||
|----------|--------|
|
||||
| Page URL changed | 301 from old URL to new URL |
|
||||
| Page deleted, replacement exists | 301 to the replacement page |
|
||||
| Page deleted, no replacement | 301 to the most relevant parent or category page |
|
||||
| Site migration (domain change) | 301 all old URLs to new domain equivalents |
|
||||
| HTTP to HTTPS migration | 301 all HTTP URLs to HTTPS (better handled at server level) |
|
||||
| www to non-www (or vice versa) | 301 (better handled at server level) |
|
||||
| Temporary maintenance | 302 to a maintenance page |
|
||||
| A/B testing | 302 to the test variant |
|
||||
| Consolidating duplicate content | 301 all duplicates to the canonical version |
|
||||
|
||||
## Common Redirect Chains to Avoid
|
||||
|
||||
A redirect chain is when URL A redirects to URL B, which redirects to URL C. This wastes crawl budget and dilutes link equity.
|
||||
|
||||
**Bad:** `/old-page/` → `/newer-page/` → `/newest-page/`
|
||||
**Good:** `/old-page/` → `/newest-page/` (and `/newer-page/` → `/newest-page/`)
|
||||
|
||||
When adding a new redirect, check if the destination already has a redirect pointing elsewhere. If so, update the chain to point directly to the final destination.
|
||||
|
||||
## Known Limitations
|
||||
|
||||
| Issue | Workaround |
|
||||
|-------|-----------|
|
||||
| Cannot reorder redirects | Delete and recreate in the desired order |
|
||||
| Regex patterns sometimes fail | Test on regex101.com first; try simpler patterns |
|
||||
| No 404 monitoring (Free) | Pro includes a site crawler that detects 404s |
|
||||
| No redirect chain detection | Manually audit for chains |
|
||||
| Large redirect lists can be slow | Consider moving high-volume redirects to `.htaccess` or server config |
|
||||
|
||||
## Best Practices
|
||||
|
||||
1. **Always redirect, never delete** — A 404 loses all SEO value the old URL had
|
||||
2. **Redirect to the most relevant page** — not always the homepage
|
||||
3. **Audit redirects quarterly** — remove redirects for URLs that no longer receive traffic
|
||||
4. **Keep redirect lists manageable** — if you have 500+ redirects, consider server-level handling
|
||||
5. **Test after creating** — visit the old URL in an incognito window to verify the redirect works
|
||||
6. **Check redirect response code** — use [httpstatus.io](https://httpstatus.io) or browser dev tools Network tab
|
||||
Reference in New Issue
Block a user