Make WordPress Core

Opened 4 weeks ago

Last modified 5 days ago

#49083 accepted enhancement

Embeds: Add support for TikTok

Reported by: jblz Owned by: audrasjb
Milestone: 5.4 Priority: normal
Severity: normal Version:
Component: Embeds Keywords: has-patch has-screenshots reporter-feedback
Focuses: Cc:
PR Number:



It's unbelievably popular and currently not supported by the embed block. In fact, pasting a video URL at the beginning of a new block results in an "embed failed" notice like so:


Developer facing documentation describes oembed functionality and advanced usage.

Adding support should be fairly straightforward on the core side by just adding the URL pattern & oembed link. We can separately add advanced support on the Gutenberg side for fine-tuning the block editor functionality if desired.

Attachments (2)

49083.diff (1.1 KB) - added by audrasjb 4 weeks ago.
Adds TikTok oEmbed
screencapture-localhost-8888-testing-features-test4-wp-admin-post-php-2019-12-27-11_48_18.png (301.2 KB) - added by audrasjb 4 weeks ago.
TikTok oEmbed rendering

Download all attachments as: .zip

Change History (13)

#2 @spacedmonkey
4 weeks ago

  • Keywords has-patch added
  • Version changed from trunk to 3.0

@jblz Thanks for your ticket. You may want to also open a ticket one gutenberg repo, so you can request a Tiktok block like other services.

4 weeks ago

Adds TikTok oEmbed

#3 @johnbillion
4 weeks ago

  • Version 3.0 deleted

#4 @audrasjb
4 weeks ago

  • Keywords has-screenshots added
  • Milestone changed from Awaiting Review to 5.4
  • Owner set to audrasjb
  • Status changed from new to accepted

Thanks for the pull request on GitHub.
I prepared the patch for SVN and milestoned the feature for the next major.

I also made a pull request on Gutenberg GitHub Repository: https://github.com/WordPress/gutenberg/pull/19345


#5 @peterwilsoncc
4 weeks ago

  • Keywords reporter-feedback added

For the purpose of completeness could you please go through the checklist for whitelisting oEmbed providers, the basics are that they must

  • be well-established, popular, and mainstream services,
  • properly and fully implement the oEmbed specification,
  • and clearly be a trusted provider.

I haven’t looked into it but I would be surprised if they don’t meet the requirements.

#6 @audrasjb
3 weeks ago


I'm not a user of the application, but here are some publicly available informations about this service:

Be well-established, popular, and mainstream services

As of 2018, TikTok is now available in over 150 markets, and in 75 languages. TikTok was downloaded more than 104 million times on Apple's App store during the full first half of 2018, according to data provided to CNBC by Sensor Tower, an app analytics platform based in San Francisco. It surpassed Facebook, YouTube and Instagram to become the world's most downloaded iOS app for that time period.

Source: https://en.wikipedia.org/wiki/TikTok#Evolution

Properly and fully implement the oEmbed specification

Documentation about oEmbed can be found here: https://developers.tiktok.com/doc/Embed

🔲 Clearly be a trusted provider

I'm not sure to fully understand how to ensure the provider is a trusted provider. Maybe the above link to the Wikipedia page could help?

#7 @jblz
3 weeks ago

Thanks for the elaboration on the requirements, @audrasjb.

I'm not sure to fully understand how to ensure the provider is a trusted provider. Maybe the above link to the Wikipedia page could help?


I'm not sure how to fully establish trustworthiness in this sort of feature. Here's some points to consider:

I'm not sure that any of that qualifies them to provide unfiltered HTML, but it seems to have all the building blocks for a trustworthy service to me.

#8 follow-up: @jblz
2 weeks ago

  • Keywords reporter-feedback removed

Removing reporter-feedback tag. Please feel free to add it back if there are more questions or concerns.

#9 in reply to: ↑ 8 @peterwilsoncc
2 weeks ago

  • Keywords reporter-feedback added

Replying to jblz:

Removing reporter-feedback tag. Please feel free to add it back if there are more questions or concerns.

The full list of questions from the checklist linked to above still needs to be completed before they can be whitelisted.

Going through the list has highlighted potential problems in the past -- for example Github not implementing the oembed spec -- and being complete avoids favouring any one provider.

#10 @jblz
2 weeks ago

@peterwilsoncc, I'm not clear on what remains to establish from the checklist.

The comment above mine asserts that the first two items are sufficiently satisfied and I left some additional analysis on the third.

RE: oembed, the linked developer doc says:

The response format follows the specification of https://oembed.com

Is there a validation tool we need to subject it to or something like that?


#11 @peterwilsoncc
2 weeks ago


This is the full checklist, some of the questions have been answered above but others remain unanswered. Not everything needs a pass, but it does need to be documented as part of the ticket.

  • Is the service is popular enough for core developers to have heard of it before? Is it “mainstream?”
  • If similar services are already supported, how does this service compare in terms of size, features, and backing?
  • Does this service have a large following on Twitter, Facebook, or other social media? Is its Twitter account verified?
  • Is its oEmbed endpoint clearly established and properly documented? (Sometimes, they are just a developer’s pet project that may not be supported.)
  • Does the oEmbed endpoint work with WordPress’ oEmbed auto-discovery? If not, could it be made to work with additional HTML tags or attributes being whitelisted?
  • Does the service make an effort to build relationships with developers, such as through robust APIs?
  • How old is the service?
  • Does it have a well-established Wikipedia article? (Seriously.)
  • Has anyone written a WordPress plugin that leverages the service in some way, whether adding it as an oEmbed provider, creating a shortcode, or leveraging other APIs of the service? Do these plugins have any noticeable adoption or traction that would indicate usage and demand?
  • Is the provider frequently proposed?

Individually, these are all very anecdotal. But when considered holistically, it paints a pretty decent picture.

My gut instinct is TicTok ought to be added but part of the aim here is to have anecdotal data to indicate the whitelisting won't need to be deprecated in a few years.

Providing links where applicable will be helpful too.

Note: See TracTickets for help on using tickets.