Использование значка в Zend Framework - PullRequest
7 голосов
/ 22 июня 2011

Каков наилучший способ обработки favicon.ico в среде Zend?Я видел альтернативы, которые требуют модификации файлов phtml, таких как:

$this->headLink()->headLink(array('rel' => 'favicon',
                              'href' => '/img/favicon.ico'),
                              'PREPEND')

или модификации файла .htaccess.

Спасибо,

Ответы [ 5 ]

6 голосов
/ 22 июня 2011

Три варианта:

  • Ничего не делать - если favicon с именем favicon.ico находится в вашем общедоступном каталоге, большинство браузеров подберет его
  • Жесткий код тега <link> в макете
  • Программно добавьте тег ссылки, как в вашем примере кода

Лично я бы выбрал вариант 2. Нет смысла программно добавлять значок, если он всегда будет там. Это могло бы иметь смысл, если бы значок был разным для разных пользователей, например скажем, ваше приложение имеет систему тем с разными значками для разных тем, тогда вы можете использовать headLink ().

Браузеры, как правило, долгое время кэшируют значки избранного, поэтому до тех пор, пока в источнике HTML появляется тег ссылки, он в конечном итоге будет обновляться. Вы можете ускорить процесс, изменив имя файла, просмотрев значок в вашем браузере и / или очистив кеш браузера.

4 голосов
/ 22 июня 2011

Вы просто перемещаете файл favicon.ico в папку public!;)

1 голос
/ 11 декабря 2013
//in controller
$this->view->headLink(array('rel' => 'shortcut icon', 'href' => '/themes/kieuhung/images/favico.png', 'type' => 'image/x-icon'), 'PREPEND');

//and in layout
echo $this->headLink();

удачи

1 голос
/ 06 июля 2011

Я обнаружил, что если атрибут rel , являющийся "favicon", ожидал, что что-то не работает, пока я не изменил вышеуказанный атрибут на "ярлык" (протестирован в Firefox 5.0 Ubuntu)

0 голосов
/ 27 марта 2013

Скелетное приложение ZF2 включает в себя favicon.ico по умолчанию в /public/img/favicon.ico. Просто измените этот файл, и все готово.

Может также помочь принудительно обновить кэш браузера, указав его путь к этому файлу явно.

...