WordPress.com and Jetpack enables embedding of external services through oEmbed or through specific supported WordPress shortcodes. Shortcodes are special tags which are translated into static markup, Flash and/or JavaScript code inside a post.

We use either of these 2 methods because:

  • It allows us to maintain the security of cookies and such on the WordPress.com domain.
  • Embeds and other rich media wreak havoc on WYSIWYG editors; this is far easier for people to copy, paste, and move around.
  • The code is generally much shorter than the equivalent HTML code.
  • We can update the translated HTML while leaving the shortcode the same.
  • We can display the most appropriate content to mobile clients, web feeds and other forms of consumption.
  • We track how much different external services are used, for example we know there have been millions of posts with embedded YouTube videos.
  • It enables a closer relationship with partners.
  • We can promote the embeds we support in the posting interface.

We receive many requests to add support for new services and embed codes. We have already integrated the embedding features our publishers most often demand, but we are always open to new and interesting content and services not already on our radar.

Third-party embed providers must have significant market interest before being considered for inclusion on WordPress.com. We also prefer oEmbed over other methods so supporting oEmbed increases the likelihood of an easy integration

If you go the shortcode route, you can use the WordPress Shortcodes API to translate complex embed codes into simple macros. If you go this route, we also highly encourage having a fully functional WordPress.org plugin first before reaching out to us.

If you’d like to apply to become an embed provider, please get in touch with us and provide answers to the following questions:

  • How many active monthly users does your service have?
  • Do you have a WordPress.org plugin?
  • How many self-hosted WordPress sites currently embed your service?
  • Does your service already support oembed? If not, is it something that you are planning to add soon?