public function fetch($client_id, $tag)
 {
     global $wpdb;
     $instagram = new \Instagram\Instagram();
     $instagram->setClientId($client_id);
     $min_tag_id = get_option("last_instagram_tag_{$tag}_id", 0);
     $tag = $instagram->getTag($tag);
     $media = $tag->getMedia(array('min_tag_id' => $min_tag_id));
     update_option("last_instagram_tag_{$tag}_id", $media->getNextMaxTagId());
     foreach ($media as $m) {
         $query = "SELECT posts.* FROM " . $wpdb->posts . " AS posts\n        INNER JOIN " . $wpdb->postmeta . " AS wpostmeta ON wpostmeta.post_id = posts.ID\n        AND wpostmeta.meta_key = 'degg_instagram_id'\n        AND wpostmeta.meta_value = '{$m->getID()}'";
         $posts = $wpdb->get_results($query, ARRAY_A);
         if (!$posts) {
             $id = wp_insert_post(array('post_title' => "{$m->getUser()} on {$m->getCreatedTime('M jS Y @ g:ia')}", 'post_content' => "<img src='{$m->getThumbnail()->url}' title='Posted by {$m->getUser()} on {$m->getCreatedTime('M jS Y @ g:ia')}'>", 'post_type' => 'degg_instagram'));
             add_post_meta($id, 'degg_instagram_id', "{$m->getID()}", true);
             add_post_meta($id, 'degg_instagram_title', "Posted by {$m->getUser()} on {$m->getCreatedTime('M jS Y @ g:ia')}", true);
             add_post_meta($id, 'degg_instagram_user', "{$m->getUser()}", true);
             add_post_meta($id, 'degg_instagram_caption', "{$m->getCaption()}", true);
             add_post_meta($id, 'degg_instagram_link', "{$m->getLink()}", true);
             add_post_meta($id, 'degg_instagram_thumbnail', $m->getThumbnail(), true);
             add_post_meta($id, 'degg_instagram_standard_res', $m->getStandardRes(), true);
             add_post_meta($id, 'degg_instagram_low_res', $m->getLowRes(), true);
             wp_publish_post($id);
         }
     }
 }
Beispiel #2
0
<?php

$instagram = new Instagram\Instagram();
$instagram->setAccessToken($_SESSION['instagram_access_token']);
$tag = $instagram->getTag(isset($_GET['tag']) ? $_GET['tag'] : 'mariokart');
$media = $tag->getMedia(isset($_GET['max_tag_id']) ? array('max_tag_id' => $_GET['max_tag_id']) : null);
require 'views/_header.php';
require 'views/tag.php';
require 'views/_footer.php';
 public function testCreateInvalidTag2()
 {
     $this->setExpectedException('\\Instagram\\Core\\ApiException');
     $instagram = new Instagram\Instagram($this->access_token);
     $tag = $instagram->getTag(9.284902834902384E+35);
 }
 public function get_hashtag($tag = null, $user_id = null, $count = null)
 {
     if (!$tag || !$user_id) {
         return false;
     } else {
         if (!$count || !is_integer($count)) {
             $count = (int) $this->settings['number_of_photos'];
         }
         $token = get_user_meta($user_id, $this->fix_name('authorized'), true);
         if ($token) {
             $return_array = get_transient($this->fix_name('images_' . $tag . '_' . $count));
             if (!$return_array) {
                 $instagram = new Instagram\Instagram();
                 $instagram->setAccessToken($token);
                 $hashtag = $instagram->getTag($tag);
                 $images = $hashtag->getMedia(array('count' => $count));
                 $return_array = $this->convert_array($images);
                 if (count($return_array)) {
                     $short_term = (int) $this->settings['short_term_cache'];
                     delete_transient($this->fix_name('images_' . $tag . '_' . $count));
                     delete_transient($this->fix_name('images_' . $tag . '_' . $count . '_long'));
                     set_transient($this->fix_name('images_' . $tag . '_' . $count), $return_array, $short_term * 60 * 60);
                     set_transient($this->fix_name('images_' . $tag . '_' . $count . '_long'), $return_array, 84600);
                 } else {
                     $return_array = get_transient($this->fix_name('images_' . $tag . '_' . $count . '_long'));
                     if (!$return_array) {
                         $return_array = false;
                     }
                 }
             }
             return $return_array;
         } else {
             return false;
         }
     }
 }