8tracks Mix Feeds Information

For detailed help and documentation, please visit the plugin web page.

'created', 'items' => 5, 'user' => '', 'heading' => '', 'item_size' => 50, 'items_per_row' => 5, 'mix_label_size' => '25px', 'css_id' => '' ), $atts ) ); $api_url = 'http://8tracks.com/users/' . urlencode( $user ) . '/mixes.json' . '?api_key=' . API_KEY . '&api_version=' . API_VERSION . '&per_page=' . $items; switch ( $type ) { case 'liked': case 'mix_feed': $api_url .= '&view=' . $type; case 'created': default: break; } $output = '
'; $api_response = wp_remote_get( $api_url ); $json_body = wp_remote_retrieve_body( $api_response ); if ( empty( $json_body ) ) return false; $mix_list = json_decode( $json_body, true ); $items_per_row = (int) $items_per_row; $item_count = 1; $style = 'width: ' . $item_size . 'px; height: ' . $item_size . 'px; background-size: ' . $item_size . 'px ' . $item_size . 'px;'; foreach( $mix_list[ 'mixes' ] as $mix ) { $output .= ''; $output .= '
'; $output .= '
'; $output .= '

' . $mix[ 'name' ] . '

'; $output .= '
'; if ( ( $item_count % $items_per_row ) == 0 ) $output .= '
'; $item_count++; } $output .= '
'; return $output; } class mac8tmf_mix_feed_widget extends WP_Widget { //process the new widget function mac8tmf_mix_feed_widget() { $widget_ops = array( 'classname' => 'mac8tmf_mix_feed_widget_class', 'description' => 'Display liked, created, or feed mixes from an 8tracks profile.' ); $this->WP_Widget( 'mac8tmf_mix_feed_widget', '8tracks Mix Feed', $widget_ops ); } //build the widget settings form function form($instance) { $defaults = array( 'type' => 'created', 'items' => 5, 'user' => '', 'heading' => '', 'item_size' => 50, 'items_per_row' => 5, 'mix_label_size' => '25px', 'css_id' => '' ); $instance = wp_parse_args( (array) $instance, $defaults ); $type = $instance['type']; $items = $instance['items']; $user = $instance['user']; $heading = $instance['heading']; $item_size = $instance['item_size']; $items_per_row = $instance['items_per_row']; $mix_label_size = $instance['mix_label_size']; $css_id = $instance['css_id']; ?>

8tracks username:

Type of feed:

Feed heading:

Number of mixes to display (Max is 50):

Mix image size (measure in px, default is 50, max is 250):

Number of mixes in each row:

Mix label size (e.g. "16px", "1em", "100%"):

Container CSS ID:

50 ) $items = 50; if ( ! absint( $items ) ) $items = 5; if ( $item_size > 250 ) $items = 250; if ( ! absint( $item_size ) ) $item_size = 50; if ( $items_per_row > 50 ) $items_per_row = 50; if ( ! absint( $items_per_row ) ) $items_per_row = 1; if ( $user ) { echo do_shortcode( '[mixes heading="' . '' . '" item_size="' . $item_size . '" user="' . $user . '" items="' . $items . '" items_per_row="' . $items_per_row . '" type="' . $type . '" mix_label_size="' . $mix_label_size . '" css_id="' . $css_id .'"]' ); } echo $after_widget; } } ?>