Page MenuHomeMusing Studio

Render oEmbed-enabled content
Open, NormalPublic

Description

Overview

When a user includes a URL from an oEmbed-enabled provider, fetch that oEmbed data and render it in the post instead of the plain URL.

Background

This enables easy embedding of all types of content (see subtasks for some).

Implementation

On publish:

  • Check plain URLs against a list of providers.
  • If the URL matches one, fetch that data (ideally asynchronously, before the user publishes - TODO: create task)
  • Cache that data locally in a new oEmbed database table
    • Retain a cached version for some small amount of time

On post rendering:

  • Check plain URLs against a list of providers
  • If the URL matches one, look it up in the oEmbed table
  • Serve the content from the database
  • If the cached data is expired, fetch it in the background (for the next visitor to see)

Related Objects

StatusAssignedTask
OpenNone
OpenNone

Event Timeline

matt added a subtask: Restricted Maniphest Task.
matt added a subtask: Restricted Maniphest Task.Jan 14 2021, 4:04 AM
matt added a project: Restricted Project.Jan 21 2021, 5:15 PM
matt closed subtask Restricted Maniphest Task as Resolved.Feb 4 2021, 10:36 PM
matt closed subtask Restricted Maniphest Task as Resolved.Feb 4 2021, 10:38 PM