Each site keeps its own queue. Nothing is stored outside post and term meta, and no tables are added.
Lifecycle of an item
- Queued. A published post or public term that has never been sent, or has changed since it was last sent.
- Sent. Once the item has been unchanged for a minute, is not open in the block editor, and was not sent in the last 15 minutes, a Save Page Now request is fired without waiting for a reply.
- Checked. An hour later the Wayback Machine CDX index is queried for a successful capture newer than the send. Checks repeat hourly.
- Archived when a capture is found; the column links straight to it. After two hourly misses the item is resubmitted, this time waiting up to 30 seconds for a reply. After two resubmits without a capture it is marked Failed (typically pages behind a login, or ones the archive refuses).
Editing an item at any stage puts it back to Queued and starts the cycle again. Its last known snapshot stays linked until a newer one is confirmed.
Stored data
_lh_wayback_machine-timestamp: when the item was last sent (UTC)._lh_wayback_machine-snapshot: the latest confirmed capture, as a 14-digit Wayback timestamp._lh_wayback_machine-checked,-misses,-attempts: verification state._lh_wayback_machine-dirty: terms only, when the term was last edited (terms have no modified date).
Items sent before 2.0.0 are treated as legacy: they get one CDX lookup to record their latest snapshot and are never resubmitted unless edited again.
Background jobs
Jobs run through Action Scheduler when it is loaded and WP-Cron otherwise. lh_wayback_machine_single processes the queue and reschedules itself for the next item that falls due. lh_wayback_machine_wakeup runs daily as a backstop. A per-site lock stops two passes from running at once. Both jobs are removed on deactivation.
Filters
lh_wayback_machine_init_plugin: return false to disable the plugin without deactivating it.lh_wayback_machine_get_applicable_post_types,_get_applicable_post_statuses,_get_applicable_taxonomies: what gets archived.lh_wayback_machine_return_settle_delay(60s),_return_reping_gap(900s),_return_check_interval(3600s),_return_max_misses(2),_return_max_attempts(2),_return_batch_size(5): timing and limits.lh_wayback_machine_use_action_scheduler,_return_group: queue backend.