Adding Wistia as an oEmbed Provider in WordPress 4.0 & WordPress 4.1
(originally posted on Bring Your Own Design)
With today’s WordPress 4.0 sendout, embedding content from other sites just got way easier. While there is a pretty large list of oEmbed providers, a very important one for us SEOs was left out: Wistia. Don’t worry, though. There is a way to make Wistia videos work the same was with a simple paste of the video URL, much like a YouTube video works.
In your theme’s functions.php, paste the following code:
wp_oembed_add_provider( '/https?://(.+)?(wistia.com|wi.st)/.*/', 'https://fast.wistia.com/oembed', true );
This will let you take the native Wistia video URL, and have the video show up in the Visual editor for easier formatting of the post. It’ll take this:
…and turn it into this (it’s a video from one of our spectacular clients!):
Have any questions? Let us know in the comments!
THank you for this information Chris! I am comfortable with customizing WP but far from a PHP guy, so, question for you. I just replicated what you instructed (for those like me, I had to paste the code referenced above inside , at least it seemed to have worked).
So when I did that and tested a post it seemed to act like it was working, then when I previewed the post it gave me a php error in line XXX. Is this because I have a CNAMED Wistia URL? Instead of http://livewirefilms.wistia.com my account URL is http://library.livewirefilms.com
Any word of advice to get this working? Thanks so much!
wp_oembed_add_provider( '/https?://(.+)?(livewirefilms.com)/.*/', 'https://fast.wistia.com/oembed', true );
My Regex is rusty, but I think that should work.
Thank you for the info! Didn’t work. I added the code you replied with and it didn’t work. I then also added the original one from your post and that didn’t work. However, I do have a NON CNAMED Wistia account and I tried that and it in does fact work. So, looks like a CNAMED account is the issue, which is a huge bummer because that is my main account.
Any other ideas on a solution for that?
Can you post a link to a video from that account?
Here are both.
My primary CNAMED account: http://library.livewirefilms.com/medias/bbv4v2f182
My selectively used “regular” account: https://livewire.wistia.com/medias/y5lwn6ybm9
Ah, I see what the problem is. Wisita, for some reason, doesn’t use HTTPS for the CNAMED addresses. So, you can simply add the ‘s’ to the URL before pasting it into the post screen.
The alternative is change the HTTPS to HTTP in the function. I’m sure there’s a regex way to do it, but I’ll have to spend some time on it to get that right. I’ll try to update once I figure that out.
Just building a full wistia integration plugin if you would like to test it out
Just adding the analytics dashboard at the moment.