Нужно использовать много изображений на сайте? Не хочется забивать хостинг изображениями? Хочется уменьшить нагрузку на сервер?
Тогда можно использовать сервис от гугл picasaweb і Picasa API как хостинг для изображений
процесс загрузки фотографий на сервер
У гугл есть программа http://picasa.google.com/ для поиска и редактирования изображений на компьютере. При маленьком размере загрузочного файла программа может очень многое. Описывать возможности не буду, лучше попробовать. Нас интересует загрузка изображений с локального компьютера на сервис изображений picasaweb.google.com
1. После установки picasa, ждем некоторое время, когда программа найдет изображения на компьютере
2. Выделяем нужные изображения
3. Из контекстного меню выбираем Upload to Picasa Web Albums…(в английском варианте)
4. Вводим логин и пароль если не вошли в акаунт гугл
5. Вводим название и выбираем размер изображений. Для веб-альбомов достаточно 640 пикселей
6. Наглядно видно процесс загрузки
Загружаем библиотеку для работы с Picasa Api написанную Cameron Hinkle
Особенности библиотеки
1. Есть отличная документация
2. Бесплатная
3. Поддерживает большинство возможностей picasa
1. Для работы библиотеки нужно что б путь к файлам библиотеки входил в include_path
2. В файле Picasa.php поменять путь к библиотеке
Внимание! По указанной выше ссылке библиотека модифицирована. Вместо id альбома передается название.
Оригинальную библиотеку можно скачать тут
Фотографии на живом сайте
Фотографии на сайте picasaweb
P.S. Для Zend Framework есть класс для работы с picasа API
Особая благодарность Cameron Hinkle за отличную библиотеку
Тогда можно использовать сервис от гугл picasaweb і Picasa API как хостинг для изображений
процесс загрузки фотографий на сервер
Особенности picasaweb
- Надежность сервиса от гугл
- Удобно загружать фотографии на сервер
- Перед загрузкой можно выбрать размер и подкорректировать параметры изображения
- Бесплатно доступно 1 Гигабайт, если нужно больше, можно купить 20Г за $5 в год
- Есть API
Теория (кто знаком с программой picasa и сервисом picasaweb.google.com можно пропустить)
У гугл есть программа http://picasa.google.com/ для поиска и редактирования изображений на компьютере. При маленьком размере загрузочного файла программа может очень многое. Описывать возможности не буду, лучше попробовать. Нас интересует загрузка изображений с локального компьютера на сервис изображений picasaweb.google.com
1. После установки picasa, ждем некоторое время, когда программа найдет изображения на компьютере
2. Выделяем нужные изображения
3. Из контекстного меню выбираем Upload to Picasa Web Albums…(в английском варианте)
4. Вводим логин и пароль если не вошли в акаунт гугл
5. Вводим название и выбираем размер изображений. Для веб-альбомов достаточно 640 пикселей
6. Наглядно видно процесс загрузки
Практика
Загружаем библиотеку для работы с Picasa Api написанную Cameron Hinkle
Особенности библиотеки
1. Есть отличная документация
2. Бесплатная
3. Поддерживает большинство возможностей picasa
1. Для работы библиотеки нужно что б путь к файлам библиотеки входил в include_path
2. В файле Picasa.php поменять путь к библиотеке
-
- ini_set('include_path',ini_get('include_path').'.:'.$_SERVER['DOCUMENT_ROOT'].'/phplib/LightweightPicasaAPIv3/');
- $library_path = $_SERVER['DOCUMENT_ROOT'].'/phplib/LightweightPicasaAPIv3/';
- include_once ($_SERVER['DOCUMENT_ROOT'].'/phplib/LightweightPicasaAPIv3/Picasa.php');
- //
- // $user - владелиц альбома
- // $album_name - название альбома
- // пример: для альбома picasaweb.google.com.ua/muzprostir/290110
- // $user=muzprostir
- // $album_name=290110
- //
-
- function get_picasa_album($user, $album_name)
- {
- // если есть кеш, берем данные из кеша
- if (file_exists($_SERVER['DOCUMENT_ROOT'].'/cache/picasa_api_cache/'.$user.'/'.$album_name) )
- {
- $album_data = unserialize(file_get_contents($_SERVER['DOCUMENT_ROOT'].'/cache/picasa_api_cache/'.$user.'/'.$album_name));
- }
- else
- {
- // получаем данные через API picasa
- $pic = new Picasa();
- // получаем данные для альбома, в последнем параметре указываем размеры необходимых изображений. Можно также указать размеры: 72, 144, 200, 320, 400, 512, 576, 640, 720, 800, 912, 1024, 1152, 1280, 1440, 1600
- // googlesystem.blogspot.com/2006/12/embed-photos-from-picasa-web-albums.html
- $album = $pic->getAlbumById($user, $album_name,null,null,null,null,'144,640');
-
- // получаем данные о изображениях в альбоме
- $images = $album->getImages();
- foreach ($images as $image)
- {
- $thumbnails = $image->getThumbnails();
- $album_data['images'][] = array('url'=>(string)$thumbnails[1]->getUrl(),
- 'width'=>(string)$thumbnails[1]->getWidth(),
- 'height'=>(string)$thumbnails[1]->getHeight(),
- 'title'=>(string)$image->getDescription(),
- 'tn_url'=>(string)$thumbnails[0]->getUrl(),
- 'tn_width'=>(string)$thumbnails[0]->getWidth(),
- 'tn_height'=>(string)$thumbnails[0]->getHeight(),
- );
-
- }
- // иконка альбома
- $album_data['url'] = (string)$album->getIcon();
- $album_data['width'] = '160';
- $album_data['height'] = '160';
- $album_data['title'] = (string)$album->getTitle();
-
- // сохраняем данные в кеш
- if(!is_dir($_SERVER['DOCUMENT_ROOT'].'/cache/picasa_api_cache/'.$user))
- mkdir($_SERVER['DOCUMENT_ROOT'].'/cache/picasa_api_cache/'.$user,0777);
- file_put_contents($_SERVER['DOCUMENT_ROOT'].'/cache/picasa_api_cache/'.$user.'/'.$album_name,serialize($album_data));
- }
-
- return $album_data;
- }
-
-
Внимание! По указанной выше ссылке библиотека модифицирована. Вместо id альбома передается название.
Оригинальную библиотеку можно скачать тут
Результат
Фотографии на живом сайте
Фотографии на сайте picasaweb
P.S. Для Zend Framework есть класс для работы с picasа API
Особая благодарность Cameron Hinkle за отличную библиотеку