/*
Plugin Name: Distrify Embed
Plugin URI: http://support.distrify.com/customer/portal/articles/264106-how-do-i-embed-on-a-wordpress-blog-
Description: Extends WordPress's Embeds allowing bloggers to easily embed videos from Distrify. Just go to any Distrify film page or player and copy the URL. Paste that URL in any WordPress blog and it will automatically be converted to an embedded Distrify player. If you are logged in to distrify.com it will automatically add your affiliate tracking code to your embeds. Make sure you turn on Auto-embeds in your WP settings and also make sure that the URL is on its own line and not hyperlinked (clickable when viewing the post). The plugin also extracts the still image from the film and saves it as the Featured Image for the post. This actually works for any Embed (not just Distrify) that you embed into your WordPress blog.
Author: Distrify Limited
Version: 0.3.1
Author URI: http://www.distrify.com
License: GPL2
Copyright 2011-2013 Distrify (email : hello@distrify.com)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License, version 2, as
published by the Free Software Foundation.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
/**
* Does the work of adding the Distrify provider to wp_oembed
*/
function add_distrify_provider($the_content){
require_once( ABSPATH . WPINC . '/class-oembed.php' );
wp_oembed_add_provider('#https?://(www\.)?(distrify|muvies).com/films/.*#i', 'http://distrify.com/oembed.json', true );
wp_oembed_add_provider('http://muvi.es/*', 'http://distrify.com/oembed.json' );
wp_oembed_add_provider('#https?://.*\.muvies.com/.*reviews/.*#i', 'http://distrify.com/oembed.json', true );
}
//add the provider on plugins_loaded.
add_action('plugins_loaded', 'add_distrify_provider');
/**
* from http://wordpress.stackexchange.com/q/70752/1685
* Automatically set the featured image if an oEmbed-compatible embed is found in the post content.
* author: TheDeadMedic
* author URI: http://wordpress.stackexchange.com/users/1685/thedeadmedic
*
*/
add_action( 'wp_insert_post', array( 'ofi', 'init' ) );
class ofi
{
/**
* The post thumbnail ID
*
* @var int
*/
private $_thumb_id;
/**
* The post ID
*
* @var int
*/
private $_post_id;
/**
* Sets up an instance if called statically, and attempts to set the featured
* image from an embed in the post content (if one has not already been set).
*
* @param int $post_id
* @return object|null
*/
public function init( $post_id )
{
if ( ! isset( $this ) )
return new ofi( $post_id );
global $wp_embed;
$this->_post_id = absint( $post_id );
if ( ! $this->_thumb_id = get_post_meta( $this->_post_id, '_thumbnail_id', true ) ) {
if ( $content = get_post_field( 'post_content', $this->_post_id, 'raw' ) ) {
add_filter( 'oembed_dataparse', array( $this, 'oembed_dataparse' ), 10, 3 );
$wp_embed->autoembed( $content );
remove_filter( 'oembed_dataparse', array( $this, 'oembed_dataparse' ), 10, 3 );
}
}
}
/**
* @see init()
*/
public function __construct( $post_id )
{
$this->init( $post_id );
}
/**
* Callback for the "oembed_dataparse" hook, which will fire on a successful
* response from the oEmbed provider.
*
* @see WP_oEmbed::data2html()
*
* @param string $return The embed HTML
* @param object $data The oEmbed response
* @param string $url The oEmbed content URL
*/
public function oembed_dataparse( $return, $data, $url )
{
if ( ! empty( $data->thumbnail_url ) && ! $this->_thumb_id ) {
// if ( in_array( @ $data->type, array( 'video' ) ) ) // Only set for video embeds
$this->set_thumb_by_url( $data->thumbnail_url, @ $data->title );
}
}
/**
* Attempt to download the image from the URL, add it to the media library,
* and set as the featured image.
*
* @see media_sideload_image()
*
* @param string $url
* @param string $title Optionally set attachment title
*/
public function set_thumb_by_url( $url, $title = null )
{
/* Following assets will already be loaded if in admin */
require_once ABSPATH . 'wp-admin/includes/file.php';
require_once ABSPATH . 'wp-admin/includes/media.php';
require_once ABSPATH . 'wp-admin/includes/image.php';
$temp = download_url( $url );
if ( ! is_wp_error( $temp ) && $info = @ getimagesize( $temp ) ) {
if ( ! strlen( $title ) )
$title = null;
if ( ! $ext = image_type_to_extension( $info[2] ) )
$ext = '.jpg';
$data = array(
'name' => md5( $url ) . $ext,
'tmp_name' => $temp,
);
$id = media_handle_sideload( $data, $this->_post_id, $title );
if ( ! is_wp_error( $id ) )
return update_post_meta( $this->_post_id, '_thumbnail_id', $this->_thumb_id = $id );
}
if ( ! is_wp_error( $temp ) )
@ unlink( $temp );
}
}
Shamz Le Roc is an artist you probably haven’t heard about, until now. But that’s gonna change. Why? Well for starters she’s a force of hyper-kinetic energy and that energy has taken sound shape into her debut Incipio EP release. Continue reading “shamz le roc | incipio ep”
Unknown Mortal Orchestra dips a toe into the pseudo-psychotropic wading pool and the results are seismic. The track Multi-Love has all the earmarks of a full-fledged summer jam. The track is lifted from the band’s forthcoming Multi-Love album due to drop May 26th via Jagjaguwar. Peace. Continue reading “unknown mortal orchestra | multi-love”
A-Trak is credited with being one of most talented DJ/Producers working today. And with his latest sound creation Push he solidifies once again why our bodies respond in frenetically to his beatiful music.
Little Dragon has found a way to mass produce delight in the form of bars, vocals and melody. And if you want to do something good for yourself then get the vocals of lead vocalist Yukimi Nagano inside your ears STAT! Continue reading “little dragon | klapp klapp”
Recently, the latest album Love Letters, from the ever-changing and perpetually ear-appealing foursome Metronomy is 10-piece deep fried and served with packets of funk sauce. Yes, your ears will need wet wipes for this one. Here is a band with a sound soul-stitched in the artsy annals of some future retro otherworld. Down below you can check out the brand new and oh so official video the their titled-track Love Letters. This piece was directed by Mr. Michel Gondry, so you know it’s an eyeful of sticky sweet. You can cop Love Letters now via the music outlets below, and check out the band’s Deezer Session you’ll succumb to total swoontaneous combustion. Peace.
It’s Friday. And so that’s just about all the reason one needs to get in the mood for some sexy music. And for the uninitiated it rarely gets any sexier (musically speaking that is) than an Night Drive remix. Case in point, check out the aural molestation of Arcade Fire‘s We Exist. Talk about move sumpin’. Plus, you can cop the free download which is totally pimp. Peace. Continue reading “arcade fire // we exist (night drive edit)”
Amtrac aka Caleb Cornett drops the disco/techno/house infused track Walkin’ and it’s totally badass. But don’t take my word for it, just hit play and get your sonic groove on. Peace. Continue reading “amtrac // walkin (original mix)”
If all music tells a story, then Royal Teeth’s joyous, inspired songs spin an exuberant tale of possibility, each note conveying the youthful excitement of venturing out into the great wide world. The songs on the band’s debut album, Glow (courtesy of Dangerbird Records), were penned around the idea of exploration and spirited adventures into the unknown, and its 12 tracks lay out a kaleidoscopic narrative of discovery.
If your looking for a place where music seems to grow from the ground and into your brain like an invasive species of earwigs, then Australia is that place. Electronic music making duo the Canyons are serving up something special with their latest Pink Gin EP and it’s first single Blame Me. I love it and hopefully you will too. Peace. The “Blame Me” 12-inch is out right now, with the digital version to follow on July 30th via Club Mod. Peace. Continue reading “canyons // blame me”
We’re reaching back into the R&B archive with this one. Peep the ultimate summer remix as the perpetual summertime man Viceroy puts his Midas touch all over Ginuwine‘s Pony (circa 1996). As if this song wasn’t already sensual enough, now it’s just a sexual euphemism overdose. Also, let the music play with the Viceroy & Vita Coco Tapes Vol. 2, it washes over you like a welcoming cool breeze on a idyllic tropical beach. Peace. Continue reading “ginuwine // pony (viceroy “jet life” remix) + free download”