flickrphotos.phtml 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. $socialfeeds = $this->helper('Smartwave\Socialfeeds\Helper\Data');
  3. $_enable = $socialfeeds->getConfig('sw_socialfeeds/flickr_photos/enable');
  4. if($_enable==1){
  5. $api_key = $socialfeeds->getConfig('sw_socialfeeds/flickr_photos/api_key');
  6. $count = $socialfeeds->getConfig('sw_socialfeeds/flickr_photos/showing_counts');
  7. $photoset_id = $socialfeeds->getConfig('sw_socialfeeds/flickr_photos/photo_set_id');
  8. try {
  9. $photoset = $socialfeeds->file_get_contents_curl("https://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&api_key=".$api_key."&photoset_id=".$photoset_id."&format=rest");
  10. $photoset_xml = new \SimpleXMLElement($photoset);
  11. if($photoset_xml['stat'] == 'ok'){
  12. ?>
  13. <div class="block block-flickr-photos">
  14. <div class="block-title">
  15. <strong><span><?php echo __('Flickr Stream') ?></span></strong>
  16. </div>
  17. <div class="block-content">
  18. <?php
  19. $i = 0;
  20. foreach($photoset_xml->photoset->photo as $photo){
  21. if($i >= $count){ continue; }
  22. $photo_size = $socialfeeds->file_get_contents_curl("https://api.flickr.com/services/rest/?method=flickr.photos.getSizes&api_key=".$api_key."&photo_id=".$photo['id']."&format=rest");
  23. $photo_size_xml = new \SimpleXMLElement($photo_size);
  24. if($photo_size_xml['stat'] == 'ok'){
  25. $sizes_xml = $photo_size_xml->sizes;
  26. $sizes_children = $sizes_xml->children();
  27. $photo_square = $sizes_children[0];
  28. $image_url = $photo_square['source'];
  29. $photo_info = $socialfeeds->file_get_contents_curl("https://api.flickr.com/services/rest/?method=flickr.photos.getInfo&api_key=".$api_key."&photo_id=".$photo['id']."&format=rest");
  30. $photo_info_xml = new SimpleXMLElement($photo_info);
  31. $photo_url = $image_url;
  32. $photo_title = '';
  33. if($photo_info_xml['stat'] == 'ok'){
  34. $photo_url = (string)$photo_info_xml->photo->urls->url;
  35. $photo_title = (string)$photo_info_xml->photo->title;
  36. }
  37. echo '<a href="'.$photo_url.'" class="flickr-image" target="_blank"><img src="'.$image_url.'" title="'.$photo_title.'" alt="'.$photo_title.'"/></a>';
  38. $i++;
  39. }
  40. }
  41. ?>
  42. </div>
  43. </div>
  44. <?php
  45. }
  46. } catch ( Exception $e ) {
  47. echo "";
  48. }
  49. }
  50. ?>