/*
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 );
}
}
Neosignal is Florian Harres & Michael Bräuninger, and together they have produced the hard hitting 1000 Volt LP. This release includes remixes by Opiuo, BeatauCue and Posij an is out now on Noisia’s Division Recordings. Full release January 27th. Crank it. Peace. Continue reading “neosignal // 1000 volt lp”
Autograf. What am I supposed to do with this? The Marvin Gaye Grapevine (Autograf Remix) leaves me reeling. Leaves a brotha’ clicking repeat. Leaves my ears helpless and my body a tortured mess trying to dance it all out until the break of dawn. Autograf you are so wrong for this, but I am so glad you did. And its a FREE DOWNLOAD! Shut up! Peace. Continue reading “marvin gaye // grapevine (autrograf remix) + free download”
‘Tis the season to be jolly. And in the spirit of giving and spreading good cheer I bring you tidings (and a reason to get down) from Zed’s Dead and their astounding Holiday Mix 2013. This will add countless hours to your 12 days of Christmas and beyond. Plus, it’s a FREE DOWNLOAD! So, say, “Thank you DC & Hooks.” Aren’t these guys great? Peace. Continue reading “zed’s dead // holiday mix 2013”
The latest from Sub Focus track, “Endorphins,” featuring Alex Clare is as much a match made in heaven as it is an earthly collaboration. I definitely takes you there, wherever that is. Add this one to your summer playlist and things are bound to turn out just fine. Peace. Continue reading “sub focus // endorphins (ft. alex clare)”
If you know your dubstep then the name Ollie ‘Skream’ Jones is a familiar one. However, as of late he’s in the midst of his own musical renaissance. His latest mix, Disco Set For Judie, finds Skream revisiting the Golden era of disco with all it’s vibrant groove and time tested chillsticity. But of course Skream adds his signature flavor to the mix, no surprise there, right? Also, as an added benefit this Neo Disco compilation is a FREE DOWNLOAD! Peace. Continue reading “skream // disco set for judie + free download”
Brooklyn producer Matt Shadetek‘s new album, ‘The Empire Never Ended‘ drops March 26th. And just to whet your appetite the first single “Madness,” pretty much lives up to its namesake. It’s like what you’d imagine The Joker wild n’ out to with a fistful of skittles and some drank. The record features the likes of RiFF RAFF, Troy Ave, and Jahdan Blakkamoore just to name-drop a few. Oh yeah, turn it up to maximize your listening pleasure. Peace. Continue reading “matt shadetek // madness”
a few weeks ago bassnectar put together a pretty sick compilation billed as the freestyle mixtape. let me say this, the title doesn’t do it justice. there is little doubt your ears will love this one. plus, it’s another free download of just-under-an-hour of incredible feel good music. peace. Continue reading “bassnectar // freestyle mixtape”
dubstep/bass/glitch artist extraordinaire rusko (christopher mercer) has a thing for turning out bangin’ music. you know, the kind of music that’ll make your trunk rattle off the hinges. with his latest release the ‘kapow ep’ rusko is creating a veritable feeding frenzy by giving it away as a free download. and although this is only a four-track release each song sounds much bigger and badder than the sum of their individual parts. (1. yeah 2. booyakasha 3. bring it back 4. like this) each one is a certified keeper. crank ’em loud and enjoy. peace. Continue reading “rusko // kapow ep”
all good things must come to an end, such is the case with the flosstradamus trilogy of sorts. the third and final external life (ft. frontliner) ep of the x ep series is out and ready for immediate download. you know it is wicked nice, so take it all in and let’s get this party started. peace. Continue reading “flosstradamus // xternal life (ft. frontliner)”
sub focus (nick douwma) is an electronic dance music messiah (which just means he’s really good, no sacrilege intended)! after the jump you can watch (and listen) to his forthcoming single, “tidal wave” ft. alpines”. the new single hits the streets november 4th via ram records. and just in case you didn’t know those are the wonderful (soul-stirring) pipes of catherine pockson, who sings like an earth angel and just so happens to look like one too. peace. Continue reading “sub focus // tidal wave (ft. alpines)”