'widget_flickr', 'description' => esc_html__( 'Display your Flickr photos from your flickr account.', 'bloggers-lite' ), ); parent::__construct( 'widget-flickr', 'S → ' . esc_html__( 'Flickr Photos', 'bloggers-lite' ), $widget_ops ); $this->alt_option_name = 'widget-flickr'; add_action( 'save_post', array( $this, 'flush_widget_cache1' ) ); add_action( 'deleted_post', array( $this, 'flush_widget_cache1' ) ); add_action( 'switch_theme', array( $this, 'flush_widget_cache1' ) ); } /** * Function to display flicker photos * * @since Bloggers Lite 1.0 * @param array $args arguments from sidebar. * @param array $instance instance of widget. * @return return html for front end display */ function widget( $args, $instance ) { $cache = array(); if ( ! $this->is_preview() ) { $cache = wp_cache_get( 'widget-flickr1', 'widget' ); } if ( ! is_array( $cache ) ) { $cache = array(); } if ( ! isset( $args['widget_id'] ) ) { $args['widget_id'] = $this->id; } if ( isset( $cache[ $args['widget_id'] ] ) ) { echo $cache[ $args['widget_id'] ]; return; } ob_start(); extract( $args ); $before_widget = $args['before_widget']; $before_title = $args['before_title']; $after_title = $args['after_title']; $after_widget = $args['after_widget']; $flickr_title = ( ! empty( $instance['flickr_title'] ) ) ? apply_filters( 'widget_title', $instance['flickr_title'] ) : ''; $flickr_desc = ( ! empty( $instance['flickr_desc'] ) ) ? $instance['flickr_desc'] : ''; $flickr_id = ( ! empty( $instance['flickr_id'] ) ) ? $instance['flickr_id'] : ''; $flickr_link_text = ( ! empty( $instance['flickr_link_text'] ) ) ? $instance['flickr_link_text'] : esc_html__( 'View Stream On Flickr', 'bloggers-lite' ); $flickr_count = ( ! empty( $instance['flickr_count'] ) ) ? $instance['flickr_count'] : '6'; echo $before_widget; ?>
' . $flickr_desc . ''; ?>
array( 'count' => $flickr_count, 'display' => 'latest', 'size' => 's', 'layout' => 'x', 'source' => 'user', 'user' => $flickr_id, ), ) ); if ( is_wp_error( $response ) ) { echo 'Error - ' . $response->get_error_message(); } else { $body = wp_remote_retrieve_body( $response ); $dom = new DOMDocument( '1.0', 'utf-8' ); libxml_use_internal_errors( true ); $dom->loadHTML( $body ); $divs = $dom->getElementsByTagName( 'div' ); $New_doc = new DOMDocument(); foreach ( $divs as $div ) { $n_div = $New_doc->createElement( 'div' ); $n_div->setAttribute( 'id', $div->getAttribute( 'id' ) ); $n_div->setAttribute( 'class', $div->getAttribute( 'class' ) ); $n_div->appendChild( $New_doc->importNode( $div->firstChild, true ) ); $New_doc->appendChild( $n_div ); } $f_photos = $New_doc->SaveHTML(); echo $f_photos; } ?>
' . $flickr_link_text . ''; echo $after_widget; if ( ! $this->is_preview() ) { wp_cache_set( 'widget-flickr1', $cache, 'widget' ); } else { ob_end_flush(); } } /** * @since Bloggers Lite 1.0 * @param array $new_instance updated array * @param array $old_instance old array * @return array $instance instance with new value */ function update( $new_instance, $old_instance ) { $instance = $old_instance; $instance['flickr_title'] = strip_tags( $new_instance['flickr_title'] ); $instance['flickr_desc'] = strip_tags( $new_instance['flickr_desc'] ); $instance['flickr_id'] = strip_tags( $new_instance['flickr_id'] ); $instance['flickr_link_text'] = strip_tags( $new_instance['flickr_link_text'] ); $instance['flickr_count'] = strip_tags( $new_instance['flickr_count'] ); $this->flush_widget_cache1(); $alloptions = wp_cache_get( 'alloptions', 'options' ); if ( isset( $alloptions['widget-flickr'] ) ) { delete_option( 'widget-flickr' ); } return $instance; } function flush_widget_cache1() { wp_cache_delete( 'widget-flickr1', 'widget' ); } /** * @since Bloggers Lite 1.0 * @param array $instance instance of widget * @return html return html for admin side display */ function form( $instance ) { $flickr_title = isset( $instance['flickr_title'] ) ? esc_attr( $instance['flickr_title'] ) : ''; $flickr_desc = isset( $instance['flickr_desc'] ) ? esc_attr( $instance['flickr_desc'] ) : ''; $flickr_id = isset( $instance['flickr_id'] ) ? esc_attr( $instance['flickr_id'] ) : ''; $flickr_link_text = isset( $instance['flickr_link_text'] ) ? esc_attr( $instance['flickr_link_text'] ) : esc_html__( 'View Stream On Flickr', 'bloggers-lite' ); $flickr_count = isset( $instance['flickr_count'] ) ? esc_attr( $instance['flickr_count'] ) : ''; ?>