18 ноября 2011 г.

Не отображается Граватар в блоге

Вы, наверняка, слышали о сервисе Gravatar, которые позволяет закрепить за определенным почтовым ящиком глобальный аватар. Это нужно для того, чтобы при комментировании блогов отображалась ваше фото, или другое, но индивидуальное изображение. Комментарий с нестандартным аватаром выглядит более живым, а это на плюс блогу.

На своем wordpress блоге столкнулся с такой проблемой. Один из пользователей пожаловался, что в комментариях не отображается его аватар. До того я этим вопросом не заморачивался. Когда я ставил себе граватар, то проверил, и он у меня работал, больше я к этому не возвращался, думал, что у всех работает. А т.к. комментариев не так много в блоге, то не обращал внимания на отсутствие аватарок.

Самое интересное то, что в админке блога все авы я вижу, а на самом сайте высвечивается стандартная картинка. Вопрос меня заинтересовал, и я полез в файл comments.php
Там был код, который связывался с сайтом gravatar.com, и брал картинку оттуда. Вот, как он выглядит:
<!-- Gravatar -->
<img src="http://www.gravatar.com/avatar.php?gravatar_id=<?php echo md5(get_comment_author_email()) ?>&amp;size=50&amp;default=<?php echo urlencode(get_bloginfo('template_directory').'/images/default-gravatar.jpg') ?>" width="50" height="50" alt="&nbsp;" class="gravatar" align="left" />
Но этот код как будто не работал, и картинка всё равно бралась стандартная из темы шаблона.

Тогда я зашел на сам gravatar.com, чтобы проверить правильность ссылки, и оказалось, что она другая.
Ссылка там выглядит следующим образом:
http://www.gravatar.com/avatar/87a951a034f5ef084442d0340c4b3283.png
Теперь посмотрите выше код, который стоял на блоге, заметили разницу? Кто не заметил, я выделил жирным не нужную часть, и если её заменить на символ "/", то граватары заработают.

Таким образом, после исправления, окончательный код должен выглядеть так:
<!-- Gravatar -->
<img src="http://www.gravatar.com/avatar.php/<?php echo md5(get_comment_author_email()) ?>&amp;size=50&amp;default=<?php echo urlencode(get_bloginfo('template_directory').'/images/default-gravatar.jpg') ?>" width="50" height="50" alt="&nbsp;" class="gravatar" align="left" />

Комментируйте блоги, устанавливайте граватары, будьте индивидуальны! :)
Понравился пост? Поделись с друзьями!

И смотри дальше:

10 комментариев :

  1. А я вообще на сей счет не заморачиваюсь) Стоит lzk майшоуса тока и все, а более и не нужен)

    ОтветитьУдалить
  2. Да, я бы тоже не заморачивался, если бы не начались вопросы "почему не отображается".., ради сохранения нервов пришлось искать причину, благо быстро нашел, так бы плюнул и всё..:)

    Джуси, что есть lzk..? Я не в теме твоегошоуса))

    ОтветитьУдалить
  3. Вот и надо было плюнуть :D
    Это свитчер балуется на компьютере, косяк еще мой, хотел написать "для". :) Про майшоус не слышал? 

    ОтветитьУдалить
  4. Про майшоус слышал. Регистрироваться не стал, подумал не стоит..

    ОтветитьУдалить
  5. Получилось! Благодарю!

    ОтветитьУдалить
  6. Ольга Даггер22 августа 2012 г., 0:48

    А я вообще такого кода не нашла в comments.php (((    http://noproblem.su/

    ОтветитьУдалить
  7. У меня тоже была такая проблема, спасибо за подсказку все исправили.

    ОтветитьУдалить
  8. Линк в тему из моего блога - http://plutov.by/post/gravatar_get_profile

    ОтветитьУдалить