Plugin Directory

Changeset 2269600


Ignore:
Timestamp:
03/28/2020 04:49:34 AM (6 years ago)
Author:
mnmlthms
Message:

new v1.3.1

Location:
wp-my-instagram
Files:
24 added
3 edited

Legend:

Unmodified
Added
Removed
  • wp-my-instagram/trunk/inc/public/main.php

    r2268880 r2269600  
    5959            $args = self::normalize_args( $args );
    6060            $media_array = self::get_feeds( $args );
     61
    6162            $cached = false;
    6263            $use_hashtag = !empty( $args['hashtag'] ) ? true : false;
    6364
     65            $scrape_key = $args['hashtag'] ? $args['hashtag'] : $args['username'];
     66
    6467            if ( is_wp_error( $media_array ) ) {
    6568
     
    6770
    6871            } else {
    69 
    70                 if( !empty( $media_array ) ){
    71                     $cached = true;
    72                 }
    73 
    7472                // filter for images only?
    7573                if ( $images_only = apply_filters( 'wpmi_images_only', false ) ) {
     
    7876                // slice list down to required limit
    7977                $media_array = array_slice( $media_array, 0, (int) $args['limit'] );
     78
     79                if( !empty( $media_array ) ){
     80                    $cached = true;
     81                }
    8082               
    8183                if( !$cached ){
     
    129131            $output = '';
    130132
     133            $media_array = array();
     134
    131135            if( self::get_cache( $scrape_key, (int) $args['limit'], $use_hashtag ) ){
    132136
    133                 $media_array = self::scrape_instagram( $scrape_key, (int) $args['limit'], $use_hashtag, $args['popular'] );
    134                 $media_array = (array) $media_array;
    135 
    136             }else{
    137                 $media_array = array();
     137                $feeds = self::scrape_instagram( $scrape_key, (int) $args['limit'], $use_hashtag, $args['popular'] );
     138               
     139                if ( !is_wp_error( $feeds ) ) {
     140                    $media_array = (array) $feeds;
     141                }
     142               
    138143            }
    139144
     
    188193
    189194            return get_transient( self::get_cache_name( $username, $limit, $use_hashtag ) );
     195        }
     196        /**
     197         * Set Cache
     198         * @since 1.0
     199         * @version 1.1.0
     200         */
     201        static function set_cache( $name, $value, $expiration ){
     202            if( empty( $name ) && empty( $value ) ){
     203                return;
     204            }
     205
     206            $value = base64_encode( serialize( $value ) );
     207
     208            set_transient( $name, $value, $expiration );
     209
    190210        }
    191211        /**
     
    327347            $cache_time = apply_filters( 'wpmi_cache_time', HOUR_IN_SECONDS*2 );
    328348
     349
    329350            // no caching on customizer
    330351            $customizer = ( function_exists( 'is_customize_preview') && is_customize_preview() );
    331352            $_debug = defined( 'WP_DEBUG' ) && WP_DEBUG ? true : false;
    332353
    333             // flush cache is debug mode is on
     354            // flush cache is debug mode is on
    334355            if( $_debug || $customizer ){
    335                 delete_transient( $cache_name );
     356                self::delete_cache( $_scrape_key, $_limit, $_use_hashtag );
    336357            }
    337358
    338             if ( false === ( $feed = get_transient( $cache_name ) ) ) {
     359            $feed = self::get_cache( $_scrape_key, $_limit, $_use_hashtag );
     360
     361            if ( false === $feed ) {
    339362                $feed = array();   
    340363                $batches = ceil( $_limit/self::$max );
     
    358381                // do not set an empty transient - should help catch private or empty accounts
    359382                if ( ! empty( $feed ) ) {
    360                     $feed = base64_encode( serialize( $feed ) );
    361                     set_transient( $cache_name, $feed, $cache_time );
    362                 }
    363             }
     383
     384                    self::set_cache( $cache_name, $feed, $cache_time );
     385
     386                    trigger_error( 'set_transient server side');
     387                }
     388            }
     389
    364390
    365391            if ( ! empty( $feed ) ) {
    366392
    367                 return unserialize( base64_decode( $feed ) );
     393                if( !is_array( $feed ) ){
     394                    unserialize( base64_decode( $feed ) ); 
     395                }
     396               
     397                return $feed;
    368398
    369399            } else {
     
    380410
    381411        if( !is_array( $args ) ){
    382             esc_html_e( 'This param must be array.', 'wp-my-instagram' );
     412            esc_html_e( 'This param must be an array.', 'wp-my-instagram' );
    383413            return;
    384414        }
  • wp-my-instagram/trunk/readme.txt

    r2268880 r2269600  
    44Tags: instagram, widget
    55Requires at least: 3.9
    6 Tested up to: 5.2.3
    7 Stable tag: 1.3.0
     6Tested up to: 5.3.3
     7Stable tag: 1.3.1
    88License: GPLv2 or later
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    6464
    6565== Changelog ==
     66
     67= 1.3.1 - Mar 27 2020 =
     68* Bug Fixes
    6669
    6770= 1.3.0 - Mar 26 2020 =
  • wp-my-instagram/trunk/wp-my-instagram.php

    r2268880 r2269600  
    151151                $scrape_key = str_replace( '@', '', $scrape_key );
    152152                $scrape_key = trim( $scrape_key );
    153                 $scrape_key = !empty( $data['args']['hashtag'] ) ? $data['args']['hashtag'] : $data['args']['username'];
    154153
    155154                $cache_name = WP_My_Instagram_Main::get_cache_name( $scrape_key, $data['args']['limit'], (boolean) $data['args']['hashtag'] );
     
    158157                // do not set an empty transient - should help catch private or empty accounts
    159158                if ( ! empty( $data['images'] ) ) {
    160                     set_transient( $cache_name, base64_encode( serialize( $data['images'] ) ), $cache_time );
     159
     160                    WP_My_Instagram_Main::set_cache( $cache_name, $data['images'], $cache_time );
     161                    trigger_error( 'set_transient ajax side');
    161162                }
    162163
Note: See TracChangeset for help on using the changeset viewer.