Главное Свежее Вакансии Образование
Выбор редакции:
657 2 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Новая функциональность портала GetPet

Прошло около 3 месяцев с момента моей первой статьи о разработке портала-справочника о кошках и собаках. За это время мы прилично доработали сайт, и хотели бы поделиться яркими моментами при разработке новой функциональности.

Напомню, что осенью 2015 года был запущен сайт getpet.club, который включает в себя полное описание основных пород кошек и собак, клички, статьи, объявления. К концу года большинство страниц сайта уже были проиндексированы, каталог пород стал довольно большим и полным. После новогодних праздников мы снова взялись за работу, и хотим поделиться нашими небольшими успехами.

  • Общее количество пород кошек на сайте - 60 (у 42 полностью заполнено всё описание)
  • пород собак - 112 (у 61 полностью заполнено всё описание)
  • Яндекс добавил в поиск уже более 255 страниц

Что касается новой функциональности сайта, из наиболее крупных доработок можно выделить:

  • Реализация комментариев для пород животных
  • Реализация "живого" поиска по породам
  • Автоматическая подгрузка фото пород из instagram
  • Добавление ssl сертификата, активация push-уведомлений
  • Создание 2 забавных игр "угадай породу по фото"
  • Реализация уведомлений о событиях на сайте через telegram

Что касается первых 2ух пунктов, ничего интересного в них нет, но удобства и полноты они добавляют, бесспорно. Особенно живой поиск. Теперь, введя первые 3 буквы породы, мы сразу же видим на странице результаты совпадений по названию. Для сайта-справочника это действительно незаменимая штука, позволяющая моментально находить информацию.

b_56d5f39111e0b.jpg

Больше фотографий пород

Для каждой породы помимо основной фотографии мы загружали 5 дополнительных. Однако это нам показалось недостаточным, чтобы раскрыть всю полноту информации. Добавлять десятки фото по каждой породе хоть и выглядит утомительным занятием, но является вполне осуществимой задачей. Тем не менее, опираясь на свой опыт разработки, я предложил решить данную проблему с помощью интеграции с tumblr. Я встречал на сайте автоматическую подгрузку изображений из этой соц.сети, и это виделось мне отличным вариантом относительно нашего проекта по нескольким причинам:

  1. Не нужно добавлять десятки фото, автоматически будут подтягиваться фото по заданному хеш-тэгу
  2. Фото подтягиваются по дате добавления, поэтому обновление тоже будет происходить автоматически.

Мы весьма быстро проставили всем породам хеш-теги на английском языке (обычно на английском результатов больше), познакомились с api тумблера и добавили к каждой породе страницу для фотографий с автоматической генерацией контента.

Было несколько нюансов:

  • Запрос к api выполнялся на сервере, но подтягивались последние 12 изображений по хэш-тегу. (могу врать по кол-ву, но у них есть лимит на это, а пагинация идет передачей в параметре даты через timestamp).
  • Чтобы загрузка страницы не была очень долгой, еще 12 фото подтягивались на клиенте через ajax запрос через тот же api, а не вторым запросом на сервере.

В результате практически для всех пород нашлись изображения, подтягивающиеся автоматически, однако их содержимое не всегда соответствовало заданному хэш-тегу. Например, выдача по тегу #pitbull, как вы понимаете, может содержать картинки совершенно другой направленности. И мусора оказалось на тумблере очень даже много, казалось бы, по весьма точным запросам.

Instagram v.s. Tumblr

Итогом этого всего стало решение сменить tumblr на instagram. Суть примерно одинакова, результаты предоставляются по хэш-тегу. Предварительно мы, конечно, проанализировали поиск по некоторым нашим тегам там, и результат был гораздо лучше, чем с тумблером. Интегрироваться напрямую через api не стали, применили готовый js плагин Instafeed. Минус этого метода - подключение через js. Изображения появляются на странице уже после того, как она была загружена. Не знаю, как на текущий момент с этим делом у поисковиков, но раньше они бы не заметили на странице ни одного изображения. Однако первым делом мы ориентируемся на пользователя, в дальнейшем, может быть, еще найдем время, чтобы посмотреть api instagram или найти готовое серверное решение.

b_56d5f3d428be0.jpg

Вот пример такой страницы: https://getpet.club/photo/afganskaya-borzaya

Также слышал, что у instagram существует лимит подключений к api за 1 час и, если нагрузка предполагается высокая, то лучше кэшировать у себя картинки, чтобы сократить количество обращений. Но эти проблемы мы будет решать по мере их возникновения.

Push уведомления

Данный способ информационной рассылки через браузеры chrome набирает всё большую популярность, и мы тоже решили его попробовать. Из предложенных готовых решений, подходящих почти не нашли - либо уведомления всплывали дважды - для страницы вашего сайта и для страницы сервиса, через который идет интеграция, либо для подписки необходимо было перейти по ссылке на сторонний ресурс (например, pushAll), что ведет к потере нативности и уменьшению доверия.

b_56d5f3fef05d8.jpg

После поиска сервисов для браузерных уведомлений все-таки мы решили провести прямую интеграцию с гуглом, добавили проект в гугл-консоль, получили там api-ключ.

Ssl сертификат

Сайт пришлось перевести на защищенное соединение, т.к. по-другому гугл не разрешает пользоваться push-уведомлениями. При этом в яндекс вебмастере мы выставили галочку в разделе переезда сайта «Добавить HTTPS » и, как сказал нам яндекс, «В ближайшее время в результатах поиска вместо домена getpet.club появится https://getpet.club». Кстати, этот раздел относится уже к обновленному вебмастру, находящемуся по адресу beta.webmaster.yandex.ru. В гугле добавили в консоль вебмастера еще одну версию сайта, но с защищенным соединением. Таким образом, переезд должен пройти максимально прозрачно.

Ssl сертификат взяли бесплатно на 3 года, благо сейчас их свободно раздают. Но был еще один минус - нужен был интерфейс для отправки и отслеживания уведомлений.

Сервис для рассылки пушей

Гугл предоставляет api, через которое можно работать, но писать для этого небольшую админку совсем не хотелось. Решили найти сервис, который работает с нашими ключами и предоставляет удобный интерфейс для рассылки уведомлений и получения статистики. Большой аудитории посетителей у нас еще нет, и платить деньги за сервис такого рода мы не собирались. Первое решение, которое мы нашли - microsoft azure. Интерфейс очень удобный, но пользоваться не стали, т.к. подписка на их облачные сервисы дается бесплатно лишь на месяц. В итоге нашли другой сервис pushbots.com, где достаточно большой бесплатный лимит на кол-во подключений, отправляемых сообщений и подписчиков. Минус в том, что при интеграции, когда юзер подтверждает получение уведомлений, происходит перезагрузка страницы. Не очень приятно, но жить можно.

b_56d5f44fd9cda.jpg

Лимиты бесплатного тарифа pushbots представлены

Тестировали отправку только на своих 3-ёх устройствах, вроде всё доставляется. Сейчас количество подписчиков приближается к первой сотне, а значит, в скором времени протестируем сервис уже на ней. Из небольшой нашей статистики можно сказать, что около 15% посетителей разрешают уведомлять себя через push. Учитывая, что не все они заходили на сайт, используя браузер chrome, то процент подписок можно повысить практически до 40-50%. Это, по нашему мнению, достаточно крутой результат.

Статья получилась довольно длинной, а я не люблю тратить на прочтение материалов такого типа много времени. Поэтому новые функции сервиса, которые я не описал в этой статье, оставлю до следующей. А именно, расскажу об удобстве уведомлений с сайта в telegram, а также о запуске 2-ух наших игр в рамках сайта "Угадай породу по фото" и небольшой статистике по ним. С радостью отвечу на вопросы и приму советы из Вашего личного опыта, до скорого!

+3
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Олег Волков
А как дела с посещаемостью?

Монетизация за счет объявлений частных или баннеры?
Ответить
152ФЗ.РФ
Виджет защиты сайта по 152ФЗ
Марк Тлен
Посещаемость из пс низкая, у нас есть подозрения, что яндекс все еще держит наш сайт в песочнице. В среднем до 60 человек в сутки. В моменты после запуска игр были пики посещаемости с постепенным угасанием, об этом будет рассказано подробнее в следующей статье. О монетизации пока не думаем, вариантов много, когда придет время, будем пробовать разные
Ответить
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.