/*
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 );
}
}
On June 17th, 4AD will release With Love, the third album from Zomby. The release is broken down into two volumes, the 33-track triple vinyl or double CD contains tracks you will dance to and/or fall into deep thoughts concerning life and living in or spiraling the universe. You can pre-order the LP via 4AD Shop. Peace. Continue reading “zomby // with love + video”
The Daughter’s cover of Daft Punk’s “Get Lucky” is hands down my favorite rendition of this stellar song. But if this your introduction to the Daughter then you’re also lucky. Elena Tonra, Igor Haefeli & Remi Aguilella comprise the three member North London group and if you’ve taken a shine to bands like Florence and The Machine then Daughter will be a surefire fit. Daughter’s debut album release If You Leave is out now courtesy of 4AD and Glassnote Records. You can also get your copy on iTunes. Peace. Continue reading “daughter // get lucky (daft punk cover)”
At times you just have to revisit those songs that get you up and moving! The redo of Purity Ring‘s “Belispeak” into “Belispeak II” ft. Detroit rap resident and poetic potty-mouth Danny Brown is a match made somewhere in the disco realms of Dante’s Inferno. Pump this one again for fun time’s sake. Peace.
for those familiar with grimes you know just how sub-zero chill her music can be. however, when you take a track like, “genesis” and put it into the hands of dj/producer easy girl you’re in for a dark surprise. the “genesis (easy girl) remix” is a mendicant black scrim of melancholy splendidly covered by besmirched synths and “tussled with” vocals which sometimes go beautifully staccato. this one is definitely some kind of sexy. oh before i forget, it’s a free download. so get it while it lasts. peace. Continue reading “grimes // genesis (easy girl) remix”
Memorable songs stay with us long after we’ve heard them for the first time; embedding themselves into our very bones and ruining our ears against all other sounds. Such memorable music can be had the moment you click play, and listen to the band Daughter. You’ll quickly fall beneath the spell of Elena Tonra‘s voice. Listen to their tangible fabric of a song, “Landfill” and wrap this soft-hewn scrim about your living spaces and enjoy. Both The Wild Youth EP and the His Young Heart EP are available on iTunes. Peace. Continue reading “daughter // landfill”
A much appreciated new song, “Fineshrine,” from Purity Ring. Hope you enjoy this as much as I do. By the way, the duo’s (Megan James and Corin Roddick) forthcoming debut album Shrines is scheduled to drop July 2th via 4AD. And you can most certainly Pre-Order it on Amazon or 4AD. Peace. Continue reading “purity ring // fineshrine”
Meagan James and Corin Roddick are Purity Ring. That said, the duo makes bristling music for a decidedly earthbound heavenly choir. Their new song, “Obedear” is simple beauty wrapped in rainbow gauze. Their new (as yet untitled) LP is expected to drop July 24th, and I’m so looking forward to the tracklist and of course tour dates. Peace. Continue reading “Purity Ring // Obedear”
There isn’t much not to like about Claire Boucher and her musical outlet/persona Grimes. Her latest album Visions is something one can do all sorts of things to, but mostly a body can get lost for hours on end just vibing out and surfing the inter-channels of your mind. After the jump check out her song “Genesis” reworked by Ryan Hemsworth with the addition of the unexpected words and rhymes of Deniro Farrar flowing effortlessly of Grimes’ inherent cool. Peace. Continue reading “Grimes // Genesis Ft. Deniro Farrar (Ryan Hemsworth Remix)”