Embeds Show Expired or Blank Videos

Fix cached or expired signed local playback URLs in block and shortcode embeds.

Content reviewed: October 20, 2026.


When this applies

This mainly applies to locally stored videos served through signed VidFlow playback URLs.

Required cache exclusions

  • /vidflow-video/*.
  • /wp-json/vidflow/v1/public-video-url*.
  • ?rest_route=/vidflow/v1/public-video-url*.

Script optimization

Do not delay assets/js/embed-refresh.js until interaction. It must be able to refresh stale signed URLs on page load. We recommend publishing completed videos to YouTube before embedding and selecting its published player to reduce video bandwidth and playback load on your WordPress hosting.

Checks

  • Clear page cache and CDN cache after changing exclusions.
  • Check browser console and network requests for blocked refresh routes.
  • For shortcodes, confirm the video ID exists and is complete.
  • For blocks, reselect the video if the original record was deleted.

Google and merged-video sources

Google local video and Pro merged embeds also depend on valid protected playback. Merged playback uses the same shared public-video-url refresh route and exclusions. Source selection is documented in Embed merged videos. Copy a shortcode from the correct source rather than guessing its ID.

Next steps

Cookie preferences

Choose optional services for this browser. Your choice lasts 180 days. New purposes need a new choice; allowing Vimeo does not allow analytics or advertising.

Rejecting keeps video links available. Change or withdraw anytime using Cookie preferences. Withdrawal removes loaded players; it cannot undo earlier requests or delete Vimeo cookies. Manage those in your browser.

Privacy Policy and storage details