/*
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 );
}
}
Broken Bells is Brian Burton (aka Danger Mouse) and James Mercer (The Shins.) Their forthcoming sophomore LP is After the Disco. Chances are you have never quite heard anything like it. It has an old school appeal ala 1970’s. And although it may reference the era of bell-bottoms and chain smoking it doesn’t sound staid or dated.
This is revamped art deco references and soft fizzy Pink Champagne afterglow. As on their debut self-titled release Broken Bells this one too breaks ground. The first single Holding On For Life is something that just works. It has all the mysterioso of clandestine and soulful heartache. There is a desperation which snakes like the voodoo beats of ancient drums, but it isn’t at all dour. This is spirited music and tantalizingly so.
The Parisian robotic-70’s babies Daft Punk (Guy-Manuel de Homem-Christo and Thomas Bangalter) are the stuff of music legend, and yet their legend is still being written. Collectively they’re EDM Svengalis, the are too the personification of Disco euphoria. Continue reading “daft punk // get lucky + ft. pharrell williams (our sunday best)”
i’m always excited when i hear news about one of my favorite bands …ever! so, needless to say i am more than a little excited to announce the swift sessions record store day exclusive 7-inch single, available at select retailers on November 23rd.
the forthcoming single will feature the swift session versions of “no way down” and “fall of 82”, produced by the shins most excellent keyboardist, richard swift.
the ever compelling brooklyn-based electro-pop band st. lucia are gearing up for their forthcoming lp titled ‘september’ from which the title track borrows the same name. the release comes via columbia and neon gold respectively, and you can expect it to drop early 2013. if the sonically pleasing first single is any indication, well hold on to your ears because it’s going to be a good one. peace. Continue reading “st. lucia // september”
It’s always nice to see The Shins doing what they do best. Playing great music. Here is an in-studio session of James Mercer and company playing the song, “No Way Down” from the album Port Of Morrow. Yes, it’s out now and of course you can cop it on iTunes. Peace. Continue reading “the shins // no way down (live from the studio)”
If you’re like me you have an intense admiration for James Mercer and his wonderful band The Shins. And like you need another reason to go gaga over this wonderful troupe of bandoliers. The video premiere of “The Rifle’s Spiral” is showing exclusively on www.nowness.com. Check it out and see, and hear, what all the fuss is all about.
A 5 song EP of The Shins‘ Google/YouTube SXSW Live From the Lot party performance is now available exclusively on Google Music! And, “The Rifle’s Spiral” from Live at the Lot is available as a FREE DOWNLOAD on Google Music. Peace.
Jules De Martino and Katie White definitely have a good thing going, especially with the mega awesome Sounds From Nowheresville LP on their hands. My ears are finicky listeners but they’ve practically salivating for much more when I play the latest from The Ting Tings. This new joint is practically jumping off the player and onto the dance floor. Now, here is my disclaimer, if you break something while dancing to this I am not liable. Check out the “Hang It Up” Banana Dynamite Remix plus more after the jump. Peace. Continue reading “the ting tings // soul killing”
Dim lit halls. Lazy half-light and weathered eyes worn and frayed. Someone cannot hope to see beyond this moment and tomorrow is fading fast. But somehow against their better judgement they wait it out a bit longer. Someone is being thrown a lifesaver in the form of a song. At times it is just as simple as that. Peace.