/*
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 );
}
}
Young Rival adds a distinct rock edge to your summer playlist with their southern rock punk track Interior Light. This offering sounds like a mashup of The War On Drugs, The Strokes and Of Montreal. Not bad musical references if you ask me. The Interior Light single is out now courtesy of Paper Bag Records. Look for the album bearing the same name to drop October 16th. You can check out the track and track-list after the jump. Peace. Continue reading “young rival | interior light”
If ever one could lasso a cumulus cloud and melt it, then drip drop the soft rain glow against one’s ears I am pretty certain it would like replicate Sally Shapiro’s giant-sized petite vocals. Here, Johan Agebjörn and Ms. Shapiro take the Electric Youth track The Best Thing and treat it like a bejeweled whisper. Its lovely stuff. Continue reading “johan agebjörn | the best thing (ft. sally shapiro (electric youth cover)”
PS I Love You are a couple of guys (Paul Saulnier and Benjamin Nelson) from Ontario, Canada who have a tendency of wearing their northern hearts on their northern sleeves. And for lots of reasons, it is a good and noble thing to do. Why? Well, for starters as listeners we get the end results of their lived lives. How they interpret the seconds, hours and days of their existence. It’s all there, the piteous lows and the dizzying highs. An artist’s thoughts dipped into the ink; the blood, sweat and tears written into musical journal entries. Continue reading “ps i love you | for those who stay | remix ep”
Toronto-based producer and fervent remixologist Digits rearranges the sonics of Sally Shapiro‘s If It Doesn’t Rain Tonight and the results are pleasing to the ear. Earlier this year Sally Shapiro + Johan Agebjorn unleashed upon the world at large their 3rd LP, Somewhere Else via Paper Bag Records (Permanent Vacation in the UK). The remix track hits the streets running December 4th via Flashback Records. Continue reading “sally shapiro // if it doesn’t rain tonight (digits remix)”
sorry (please forgive me) i am bit late posting the latest derrick belcham-director video for the song, “fifty fifty” by the the luyas. the song is the first single from the band’s forthcoming lp animator via paper bag records. look for it to hit the streets october 16th. peace. Continue reading “luyas // fifty fifty (official video)”
It’s not hard to reason why one would enjoy listening to Winter Gloves. The foursome from Canada makes great noise that is not only easy to listen to, but their music has the blood of early alternative rock flowing through its veins. That’s a plus in my book no matter what. You’ll discern more than a few visceral references to late 80s and early 90s alt music, think Echo & The Bunnymen, and Depeche Mode for instance. But musical influences aside these guys know how to pen and play music that stays in your head long after you’ve hit stop. The music on their 2010 release All Red begs to be revisited and played anew and often. This collection of songs is unadulterated effortless joy. I have included the video for “Dancing My Heart Out”, and after you hear it I think you’ll want to seek out more of what Winter Gloves has to offer. Peace.