Skip to content

HandyPlugins

  • Home
  • PluginsExpand
    • Magic Login Pro
    • WP Accessibility Toolkit
    • PaddlePress Pro
    • Easy Text-to-Speech
    • Handywriter
    • SessionQuota Pro
  • Docs
  • About
  • Blog
  • Contact
My Account
HandyPlugins
Popular Search shortcodehookemailtheredirect

Magic Login Pro

40
  • Installation & Configuration
  • Use magic login as the default login method?
  • Brute Force Protection
  • WooCommerce Integration
  • Easy Digital Downloads (EDD) Integration
  • Token Lifespan
  • Disable Magic Login for a Specific User
  • Login with Code: Flexible Passcode-Based Authentication
  • SMS Login – Passwordless Authentication with SMS
  • Magic Login REST API
  • QR Code Login
  • CLI Command
  • Add Login form to a Page
  • Reset Tokens
  • Auto Login Links
  • Token Validity
  • Login Redirect
  • Shortcode
  • Login Email Customization
  • Login Request Throttling
  • IP Check
  • Domain Restriction
  • Registration
  • Spam Protection
  • How to Add Magic Login to Any of Outgoing Emails?
  • Customize Default Messages
  • nG Firewall
  • Dynamically Adjust Token TTL
  • How to change Sender Details?
  • Disable Magic Login for specific roles
  • Customizing Login Session Duration
  • Magic Login Twilio Integration
  • Magic Login – FluentCRM Integration
  • Reset Magic Login Links for a User
  • Tools – Reset, Export & Import Magic Login Settings
  • Magic Login Elementor
  • Magic Login – Security Guide
  • Per-User Login Email Limit
  • Two-Factor Authentication (2FA) Compatibility Guide
  • Hooks

PaddlePress Pro

27
  • Installation & Configuration
  • How does PaddlePress PRO work?
  • Automatic account creation
  • How to set up a membership website?
  • Setup a Development Environment
  • Protect Download Files on NGINX
  • Software Licensing
  • Software Licensing API
  • Updater Implementation for WordPress Plugins
  • Updater Implementation for WordPress Themes
  • Release a New WordPress Product
  • Customer Dashboard (My Account) Page
  • Checkout Buttons
  • Custom Redirect After Successful Checkout
  • How does the domain count?
  • Emails
  • Accessing Readme through a Shortcode
  • How to Sell WordPress Products?
  • Releasing Beta Versions of a WordPress Product
  • Paddle Billing
  • Customer Dashboard
  • Membership Levels
  • Restrict Content
  • Add a Custom Payment Action
  • How to customize “Download” Button?
  • Adding Manual Payments
  • Composer Support for Private WordPress Packages

Handywriter

11
  • Installation & Configuration
  • Write a Blog Post
  • Create a Summary
  • Suggest a Title
  • Keep records of AI generated Contents
  • Grammar & Spelling Fixer
  • Plagiarism Check
  • Content Templates
  • How to create a Meta Description?
  • How to complete a sentence?
  • How does credit calculation work?

Easy Text-to-Speech

5
  • Installation & Configuration
  • Using with Block Editor
  • Using with Classic Editor
  • OpenAI Integration
  • ElevenLabs Integration

WP Accessibility Toolkit

3
  • Customization
  • Hotkeys: Quick Navigation and Efficiency
  • Do not show the accessibility toolkit on the specific page

Stream Integration Pro

2
  • Getting Started
  • Media Library Workflows

SessionQuota Pro

12
  • Quick Start
  • Installation and Activation
  • Settings Overview
  • Enforcement Modes
  • Limits and Priority
  • Frontend Session Management
  • Blocked Login Recovery
  • Admin Tools
  • Monitoring and Alerts
  • Multisite Guide
  • WP-CLI Guide
  • Troubleshooting

FAQ

1
  • How to Enter Your VAT Number for VAT Deduction at Checkout
  • Home
  • Docs
  • Stream Integration Pro
  • Media Library Workflows
View Categories

Media Library Workflows

This guide covers how the plugin behaves inside the WordPress Media Library.

The Three Main Workflows #

1. Upload to the normal WordPress Media Library #

This is a local-first workflow.

What happens:

  • WordPress creates a normal local media item.
  • If auto-import is enabled, the plugin queues an upload to Cloudflare Stream.
  • The attachment eventually becomes Local + Stream or Stream only, depending on your retention policy.

2. Upload directly to Stream #

This is a Stream-first workflow.

What happens:

  • the video is uploaded directly to Cloudflare Stream
  • WordPress creates an attachment that points to the Stream video
  • a local file is not created automatically

This is useful when you do not want the initial file to live on the WordPress server.

3. Import an existing Stream video #

You can import a Cloudflare Stream video that WordPress does not know about yet.

What happens:

  • the plugin creates a WordPress attachment for the existing Stream video
  • the attachment starts as Stream only
  • you can later restore a local file if needed

Attachment Details Screen #

Open any video attachment and you will see Stream-specific fields such as:

  • Stream UID
  • Stream status
  • Storage state
  • Asset origin
  • Local file status
  • Stream URL
  • Shortcode

Attachment Actions #

Depending on the current storage state, the plugin shows different actions.

Local only #

Common actions:

  • Upload to Stream

Local + Stream #

Common actions:

  • Sync Stream Data
  • Delete local file
  • Delete from Stream

Stream only #

Common actions:

  • Download to Local
  • Sync Stream Data
  • Delete from Stream

What the States Mean #

Local only #

The file exists in WordPress and is not currently linked to Cloudflare Stream.

Local + Stream #

The attachment has both:

  • a WordPress local file
  • a Cloudflare Stream copy

Stream only #

The attachment points to Cloudflare Stream but no local WordPress file currently exists.

Missing local file #

The attachment once had a local file, but that local file is gone. Stream may still be available.

Media Library Filters #

The plugin adds a Cloudflare Stream filter to the Media Library so you can list Stream-linked videos more easily.

This works in:

  • grid view
  • list view

Bulk Actions #

The plugin adds bulk actions for video attachments:

  • Upload to Stream
  • Sync Stream Data
  • Download to Local

Use these when you want to process many existing attachments at once.

Preview Behavior #

The plugin aims to keep Media Library previews as close to native WordPress behavior as possible.

In general:

  • grid view uses thumbnails when available
  • attachment details prefer a playable Stream preview when the Stream video is ready
  • if the Stream video is not yet playable, the UI falls back to a thumbnail

What This Plugin Does Not Assume #

The plugin does not assume:

  • that every Stream video has a local WordPress file
  • that every local WordPress file has a Stream copy
  • that deleting one copy should automatically delete the other
  • deleting an attachment will delete local file and/or stream file all together

Those are explicit actions.

Was this guide helpful for you?
Updated on April 13, 2026
Getting StartedGetting Started
Table of Contents
  • The Three Main Workflows
    • 1. Upload to the normal WordPress Media Library
    • 2. Upload directly to Stream
    • 3. Import an existing Stream video
  • Attachment Details Screen
  • Attachment Actions
    • Local only
    • Local + Stream
    • Stream only
  • What the States Mean
    • Local only
    • Local + Stream
    • Stream only
    • Missing local file
  • Media Library Filters
  • Bulk Actions
  • Preview Behavior
  • What This Plugin Does Not Assume

HandyPlugins

Explore

Home
Blog
Contact Us
My Account

Products

Magic Login Pro
Handywriter
Easy Text-to-Speech
PaddlePress Pro
WP Accessibility Toolkit

Follow Us

Twitter
Facebook
GitHub
WordPress

2026 – HandyPlugins.co | Hosted on WPHandle and optimized with Powered Cache

  • Terms and Conditions
  • Privacy Policy
  • Cookie Policy
  • Home
  • Plugins
    • Magic Login Pro
    • WP Accessibility Toolkit
    • PaddlePress Pro
    • Easy Text-to-Speech
    • Handywriter
    • SessionQuota Pro
  • Docs
  • About
  • Blog
  • Contact
We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.