/*
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 );
}
}
Continue reading "aesop rock // zero dark thirty"
The post aesop rock // zero dark thirty appeared first on The Earology Dept..
]]>
unsigned hype, front line aeronauts flurry, zero dark thirty, zero friends, minotaur-fugly stepchild, evoke lunch jumped over plunging necklines, up, beside tongue-tied hungry enzymes, devolved into mothmen munching textiles, punisher, out past go-time, back 10 fried worms chubbier, brown grass both sides, canned food, manmade tools, Lanacane, band-aids, mandrake root, bindle on a broom stick, pancaked shoes and handshake-proof campaign, can’t lose, can’t gain, smoke out moles like a force of nature, pray fortune return to his favor, swiftly, maybe in the form of a nest egg, maybe in the form of a tesla death ray, or a solid gold scene with something better to celebrate than powder on your face like a flat foot on jelly day, m-m-moral compass all batshit, spinning in the shadows of immoral magnets, are we supporting the artist or enabling the addict, I mean, I guess it matters to me, I wish it mattered to you, how a thousand virtues, kick the same bucket like chinatown turtles
roving packs of elusive young, become choke-lore writers over boosted drums, in the terrifying face of a future tongue, Down from a huntable surplus to one
(check his own) Breakneck pulse over colors in a drain that emote sugar skulls in the rain, flower-eyes melting, guided by a levy made of bath tiles tilting, quarter up and headed for the kill screen, no corner cut, no build team, only a particularly menacing, angle perpendicular to everything, boys room cherry bomb, boy/goon very much runnin’ with the devil in the mellotron, hello, here’s where a tale of caution, pounds coffin nails to bootlegs of Hawkwind, saw tooth, nevermind straw to gold, spin hearts on sleeves into heads on poles, arm in the maw, fish out pith like a business card from a jar at the mall, A-alike androids dreaming of carbon applause get stuffed with cartoon cigars, cold pack, neti-pot, home to roost, around folk backed into what they most lampoon, shook to the fevered brow and broke ankles, daisy, declawed pound, no thank you, fade me, failed all basic training but I spent a couple groundhogs days with a changeling, silouhette the god last cigarette, anything less would be re-god-damn-diculous.
Ian Matthias Bavitz is Aesop Rock and he is a certified underground O.G from back in the day. His latest “Zero Dark Thirty” if not his best work, then at least something to talk about and nod you dome to until the verdict is in after the release of his new LP later this summer. I’ve a fan for the long haul and I am definitely looking for forward to the forthcoming album Skelethon due to drop July 12th via the always dope Rhymesayers Entertainment label. You can also pre-order the new album Skelethon at Fifth Element. Peace.
The post aesop rock // zero dark thirty appeared first on The Earology Dept..
]]>