Перейти к содержимому


Пользователь месяца
ShowPrint ShowPrint 1-й за Сентябрь
Очков активности: 283 2 темы, 21 сообщение, 7 баллов репутации
Сайт: ShowPrint.ru
ТОП самых активных за этот месяц
  • Фотография Medvedoc
    #1

    Medvedoc
    Очков активности: 510 9 тем, 58 сообщений, 4 балла репутации

  • Фотография ShowPrint
    #2

    ShowPrint (ShowPrint.ru)
    Очков активности: 312 Вне конкурса за определение пользователя месяца

  • Фотография Ixman
    #3

    Ixman (o5cat.ru)
    Очков активности: 216 0 тем, 24 сообщения, 6 баллов репутации

  • Фотография BLIK
    #4

    BLIK
    Очков активности: 210 Вне конкурса за определение пользователя месяца

  • Фотография Игорь Ку
    #5

    Игорь Ку (dudesday.ru)
    Очков активности: 126 4 темы, 9 сообщений, 4 балла репутации

  • Фотография WGN
    #6

    WGN (worldgamenews.com)
    Очков активности: 88.5 Вне конкурса за определение пользователя месяца

  • Фотография Алексей111
    #7

    Алексей111 (xvideo24.ru)
    Очков активности: 66 8 тем, 20 сообщений, 1 балл репутации

  • Фотография yuran
    #8

    yuran (yurbol.ru)
    Очков активности: 37.5 1 тема, 22 сообщения, 1 балл репутации

  • Фотография Zevss
    #9

    Zevss (domles43.ru)
    Очков активности: 22.5 2 темы, 9 сообщений, 1 балл репутации

  • Фотография falka
    #10

    falka (mygoodjob.ru)
    Очков активности: 16.5 3 темы, 2 сообщения, 1 балл репутации

  • Показать весь ТОП 10

Kwork.ru - услуги фрилансеров от 500 руб.

Поддержите форум! =)
Апдейты
  • Яндекс тИЦ: 26.09.2018
  • Яндекс выдача: 20.10.2018
Топ 5 участников по репутации


Получение favicon любого сайта

#1 isvetlichniy

isvetlichniy
  • Неактивные
  • 622 сообщений
  • Репутация: 93
0

Отправлено 30 June 2013 - 11:11

Для конкурса "Web-ошибки"

Приветствую всех читателей! Сегодня поговорим о favicons для сайтов.
Для тех, кто не в курсе, что такое favicon (взято из википедии): "Favicon (сокр. от англ. FAVorites ICON — «значок для избранного», от названия папки с закладками в MSIE) — значок веб-сайта или веб-страницы. Отображается браузером в адресной строке перед URL страницы, а также в качестве картинки рядом с закладкой, во вкладках и в других элементах интерфейса."


Так уж сложились обстоятельства, что в последнее время пришлось выполнять много работы, связанной с пользовательским интерфейсом, хотя основное направление моей деятельности все же направлено на серверную разработку.
При написании очередного скрипта - конструктора сайтов - встал вопрос об автоматическом получении favicon для любого сайта, когда добавляется на страницу ссылка с этого сайта. Чтобы Вы долго не гадали что и как, продемонстрирую скриншот.
Изображение


Все иконки для ссылок получены с помощью скрипта.
Было испробовано множество вариантов для получения удаленного файла - и через сокеты и через CURL, но ни один из способов не давал 100% результата.
В итоге был использован сервис генерации favicons от google. Функция выглядит следующим образом:

function getFavicon($url) {
				 $url = parse_url($link);
				 $domain = $url['host'];
				 $favicon = "http://www.google.com/s2/favicons?domain=".$domain;
				 return $favicon;
}

Пример использования

$favicon = getFavicon('http://google.com');

Переменная $favicon будет содержать URL изображения

Ну вот и все, друзья!
Happy coding! :)

Полный текст статьи

 

 

  • 0

#2 denis79513

denis79513
  • Неактивные
  • 56 сообщений
  • Репутация: 7

Отправлено 07 July 2013 - 06:47

а зачем вообще скчивать изображение?
Просто
echo '<img src="'.$site_url.'favicon.ico">';
  • 0

#3 isvetlichniy

isvetlichniy
    Topic Starter
  • Неактивные
  • 622 сообщений
  • Репутация: 93

Отправлено 07 July 2013 - 12:47

не для каждого сайта это можно сделать (попробуй сделать например для яндекса с помощью твоего метода <img src="'http://yandex.ru/favicon.ico">)
а еще не всегда favicon лежит в корне сайта.

а эта функция позволяет получить иконку для практически любого сайта
  • 0

#4 yury

yury
  • Пользователь
  • 642 сообщений
  • Репутация: 188

Отправлено 07 July 2013 - 16:17

isvetlichniy,
а что не так с иконкой яндекса? Она спокойно вставляется на страницу кодом
<img src="http://yandex.ru/favicon.ico" />
Когда же favicon.ico не доступен в корне сайта, то в коде должна быть строка вроде такой:
<link rel="shortcut icon" href="path_to_favicon/favicon.ico" type="image/x-icon" />

Так что особых проблем получить favicon.ico, вроде как, быть не должно.
  • 1

#5 isvetlichniy

isvetlichniy
    Topic Starter
  • Неактивные
  • 622 сообщений
  • Репутация: 93

Отправлено 11 July 2013 - 08:10

href="path_to_favicon/favicon.ico"

а как определить этот путь? :)
парсить страницу?

в этом и есть особеность скрипта, что он сам определяет где иконка
  • 0

#6 denis79513

denis79513
  • Неактивные
  • 56 сообщений
  • Репутация: 7

Отправлено 11 July 2013 - 14:56

а вы думаете этот сервис определяет где иконка? Он так же парсит страницу и если там нет кастомного пути дает ссылку на site.ru/favicon.ico.
А теперь подумайте, что лучше когда вы сами парсите страницу или делаете запрос к сервису который парсит эту страницу? Первый вариант куда быстрее, так что если сервис начнет тормозить все встанет и у вас.


  • 0



Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru