/*
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 );
}
}
Nadine Carina has a way of delivering a song entwined in a honey-jar-throated-timbre that leaves bees and humans wanting more. And much like light waves caught in in the pull of a black hole, one falls easily into her musical grace, beautifully inescapable. Watch the Shondel Bervini directed video for the first single taken from the Things That People Love To Remember EP, out now on On the Camper Records. Peace. Continue reading “nadine carina | the love | video”
I have been a fan of Ms. Nadine Carina for some time now and she never fails to impress. Now, with the forthcoming release of her beautifully composed Things That People Love To Remember EP, my ears find her at her musical best. These six songs play like the colorful conversation of esteemed and intimate friends or perhaps they’re lovelorn strangers with a burning infatuation to get all up in your personal bubble and ingratiate the softness of your check next to their flesh tone whispers. So much a swirl here it is nigh impossible to select a favorite, and so I christen them all favorites. Be on the look see, for the EP drops November 18th courtesy of On The Camper Records. Peace. Continue reading “nadine carina // things that people love to remember ep”
If you’re pining for a rich musical medium in which you can plant dreams and watch me grow, well Nadine Carina is fertile ground for such endeavors. The Where I Love EP sounds like 50’s girl pop amidst Italian ice shavings and a healthy squirt of simple syrup. Yes, these songs are both cool and sweet. The Where I Love EP is available via Bandcamp. Peace. Continue reading “nadine carina // where i love ep”
does the name nadine carina ring a bell? well, you probably heard her lovely voice recently, she provided vocals for the cloud seeding project (kevin serra) on the track, “the light”. since introductions have been made, let me tell you about nadine carina’s solo experimental release ‘little bits’ ep. the newly crafted ep is a collection of experimental yet beautifully quirky odes and soundscapes perfect for late night musings or traveling through the astral plane. by the way the whole enchilada is available for free download via her bandcamp page. just so you know, my favorites our the, “paradise”, “a different face everyday” and the starlight sweetened song, “storm/calm featuring gated”. take your time with this one, it grows on you and will make a great attention to your music collection. ms. carina my hat off to you for creating such wonderful music. peace. Continue reading “nadine carina // little bits ep (our sunday best)”
Cloud Seeding it the project of guitarist Kevin Serra. What Mr. Serra does best is create acoustic milieus and fills them with vocals which personify particular moods. The results are something sounding at once painstakingly effortless and endearingly haunted. It is music commingling with the darkness of the devil and with the ethereal light of an angel’s dulcet dreams. These are sounds not so much in the middle of things as they are an exploration into the outer nuances of human feeling. On each song the artist finds comforting refuge within mundane emotional states and lingers there until we learn, through him, to see and appreciate their value. The latest collaborative single, “The Light” (Ft. Nadine Carina) is the mere crystallization of Mr. Serra’s adeptness at teasing out the essence, and beauty of our many moods and perfecting them into gorgeous song. Look for this latest single to drop digitally via Bleek Records August 14th. Peace. Continue reading “cloud seeding // the light (our sunday best)”