Plugin info

Total downloads: 326
Active installs: 0
Total reviews: 0
Average rating: 0
Support threads opened: 0
Support threads resolved: 0 (0%)
Available in: 1 language(s)
Contributors: 1
Last updated: 11/29/2025 (79 days ago)
Added to WordPress: 5/4/2025 (0 years old)
Minimum WordPress version: 5.8
Tested up to WordPress version: 6.9
Minimum PHP version: 7.2

Maintenance & Compatibility

Maintenance score

Actively maintained • Last updated 79 days ago

59/100

Is Ghost Update abandoned?

Likely maintained (last update 79 days ago).

Compatibility

Requires WordPress: 5.8
Tested up to: 6.9
Requires PHP: 7.2

Languages

Similar & Alternatives

Explore plugins with similar tags, and compare key metrics like downloads, ratings, updates, support, and WP/PHP compatibility.

No similar plugins found yet.

Description

Ghost Update is a simple but powerful plugin that makes your WordPress site look alive again by systematically updating post/page timestamps and alerting Google Search to come check it out.

This is perfect for older blogs, abandoned content, or static websites that haven’t changed in a while and are now suffering in search rankings.

Ghost Update offers:

  • ✅ Automatic post/page timestamp refresh (without touching content)
  • ✅ Optional random or sequential update order
  • ✅ Force update + recrawl button
  • ✅ Manual Google JSON auth upload & secure storage
  • ✅ Enforced 10-minute cooldown between Google Indexing API pings (for safety)
  • ✅ Simple log viewer + log clearing
  • ✅ Cron toggle — enable/disable auto mode
  • ✅ No product updates, no WooCommerce, no content edits

Cron Behavior

GhostUpdate uses WordPress’ built-in “pseudo-cron” system, which means scheduled tasks only run when someone visits your site. This includes both automatic post updates and Google Search Console pings.

Key Points

🔁 WordPress cron is visitor-based
No visitors = no cron runs. It only triggers when a page is loaded by a real user or bot.

🕓 Missed runs = delayed schedules
Cron tasks won’t fire in the background unless triggered by activity. This can cause delays in updates on low-traffic sites.

🧠 One run = one reschedule
A cron job must fire before WordPress will schedule the next one. They don’t “queue up” in advance.

Options for Low-Traffic Sites

✅ Keep the plugin’s settings page open in your browser
This keeps cron alive by generating regular page loads.

✅ Use the “Force Update + Recrawl Now” button
Instant update and ping, no waiting or cooldown.

Reminder

This behavior is core to how WordPress works. GhostUpdate doesn’t change or override it — it works with it.

External Services

This plugin connects to multiple endpoints from Google’s Indexing API to notify Google that a post or page has been updated. This functionality is required to trigger recrawls in Google’s search index.

What data is sent

The plugin sends the URL of the updated post or page to the following Google API endpoints. No personal data is transmitted.

When data is sent

Data is sent only when a post/page is programmatically republished by the plugin or when triggered manually by the admin.

External domains contacted

  • https://oauth2.googleapis.com/token — used to obtain an OAuth 2.0 token with a service account
  • https://indexing.googleapis.com/v3/urlNotifications:publish — used to send the updated URL to Google for recrawling
  • https://www.googleapis.com/auth/indexing — used as the OAuth scope to limit access to Indexing API only

Service Provider

By using this plugin, you agree to Google’s API terms and policies. The authentication is performed using a Google Cloud service account which you manually upload to the plugin.

Notes

  • Posts/pages skipped due to cooldown are still updated, just not pinged.
  • Google will still crawl updated content eventually even if not directly pinged.

License

GPL v2 — use, modify, share freely.

Installation

  1. Upload the plugin folder to /wp-content/plugins/ or install via the Plugins > Add New screen
  2. Activate the plugin through the ‘Plugins’ menu
  3. Visit Settings Ghost Update to configure:

    • Upload your Google .json service account file
    • Enable automatic updating
    • Set your desired interval (in seconds)
    • Exclude posts/pages (optional)
    • View logs of all update and ping activity

Frequently Asked Questions

What does this plugin actually do?

Ghost Update refreshes your post/page post_date and post_modified fields on a schedule (e.g. every 8 hours). Optionally, it will also notify Google using the Indexing API to request a recrawl.

Does it change content?

No. It does not alter content, metadata, taxonomy, SEO fields, or anything else. It only updates timestamps and optionally triggers a Google ping.

What’s the cooldown logic for Google API pings?

Ghost Update enforces 1 request every 10 minutes. This is to protect your quota and avoid abuse detection.

If an update is triggered while in cooldown, the post is still refreshed — but the Google ping is skipped and logged as:

🔒 Cooldown active. Skipping GSC for post ID 1234.

Can I control which posts/pages get updated?

Yes — exclude any number of posts or pages via ID in the plugin settings.

How do I authenticate with Google?

  1. Create a Google Cloud project
  2. Enable the Indexing API
  3. Create a service account, and download the .json key
  4. Upload it in the plugin settings
  5. Add the client_email from the .json file as an Owner in your Google Search Console property

How do I add the service account as an Owner in GSC?

  1. Open your .json file and find:
    “client_email”: “[email protected]
  2. Go to Google Search Console Settings Users and Permissions
  3. Click Add User and paste the service account email
  4. Set permission to Owner

Google gave me an HTML file for verification — what do I do?

You don’t need it.

Just uploaded securely via the plugin settings.
this will add the file to “your-site”/uploads/ghostupdate

Review feed

No reviews available

Screenshots

  1. Ghost Update Settings Panel

    Ghost Update Settings Panel

Changelog

1.1.0

Tested and updated to work with wp 6.9

1.0

  • Initial release
  • Scheduled updates with interval + randomization
  • Google Indexing API ping integration
  • Rate-limited GSC API calls (1 per 10 min)
  • Service account JSON file support
  • Logging system with viewer + cleaner
  • Admin UI with force button and exclusion filter
  • Enable/Disable toggle for plugin scheduler
  • Works with pages and posts (not WooCommerce)