Я в процессе изучения flickr api, используя его в проекте, и у меня проблема … У меня есть он, где flickr извлекает данные фото (показано ниже)
но он не отображает сами изображения … Я думаю, что это связано с тем, что он не <img />
теги <img />
с информацией src=" "
ниже – это код, который я пытаюсь использовать. ,
(файл кода class.flickr.php)
class Flickr{ private $flickr_key; private $flickr_secret; private $format = 'json'; // Setting up flickr_key and flickr_secret public function __construct( $flickr_key ) { $this->flickr_key = $flickr_key; } public function searchPhotos( $query = '', $tags = '' ){ // Begin searchPhotos $urlencoded_tags = array( 'animals', 'design', 'phones'); if ( !empty( $args )) { $tags_r = explode( ',', $tags ); foreach ( $tags_r as $tag ) { $urlencoded_tags[] = urlencode( $tag ); } } // Construct the url $url = 'http://api.flickr.com/services/rest/?'; $url .= 'method=flickr.photos.search'; $url .= '&text=' . urlencode( $query ); $url .= '&tags=' . implode( ',', $urlencoded_tags ); $url .= '&sort=relevance'; $url .= '&safe_search=1'; $url .= '&content_type=4'; $url .= '&api_key=' . $this->flickr_key; $url .= '&format' . $this->format; $url .= '&per_page=10'; // Calling url using curl $curl = curl_init(); curl_setopt_array( $curl, array( CURLOPT_TIMEOUT => 120, CURLOPT_URL => $url, )); if ( !curl_exec( $curl )) { die ( 'Error: "' . curl_error( $curl ) . '" - Code: ' . curl_errno( $curl )); } // Get search results $result = file_get_contents( $url ); // Remove the unneccessary strings that wraps the result returned from the API $json = substr( $result, strlen( "jsonFlickrApi("), strlen( $result ) - strlen( "jsonFlickrApi(") - 1 ); $photos = array(); $data = json_decode( $json, true ); // Check if the status didn't fail if ( $data['stat'] != 'fail' ) { /** Return only the data for the photos as that's the only thing that we need */ $photos = $data['photos']['photo']; return $photos; } else { return false; } } // end searchPhotos }
(мой вызов метода, который я использую в файле шаблона страницы)
<?php // Flickr search photos test require_once( 'class.flickr.php' ); global $flickr_key; $flickr = new Flickr( 'this_is_my_api-key_placeholder...' ); $query = "Event Photo Uploadr"; $results = $flickr->searchPhotos( $query, $tag ); if ( !empty( $results )) { foreach( $results as $photo ) { $src = "http://farm" . $photo['farm'] . ".static.flickr.com/" . $photo['server'] . '/' . $photo['id'] . '_' . $photo['secret'] . '.jpg'; ?> <img src="<?php echo $src; ?>"/> <?php } }
Как я уже сказал, я новичок в flickr api … Я был благословлен, чтобы сделать это до сих пор (благодаря stackoverflow, WordPress Answers и друзьям-разработчикам), поэтому любой полезный ввод очень ценен! 😉