Как быстро создать международный географический проект

Как быстро создать международный географический проект

С 2017 года я занимаюсь географическими проектами. Мы создаем сервисы под поисковые системы, которые предоставляют информацию о городах.

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

или службу точного времени.

Такие проекты монетизируются с помощью контекстной рекламы или партнерских программ.

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

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

За время работы над своими проектами у нас появились определенные наработки. Хотим рассказать об одной из них.

Для каждого подобного проекта необходимо иметь базу городов. В интернете их достаточно много, и у каждой есть свои плюсы и минусы. Мы создали, на наш взгляд, оптимальную базу данных для реализации средних проектов. Эта база переведена на 8 языков и включает в себя все необходимые данные для создания основы проекта. Купить ее можно по ссылке

Что можно сделать на основе данной базы с минимальными вложениями?

В качестве примера, предлагаю рассмотреть проект sunrisenow.net Изначально у меня уже была база на 1,5 млн мест с географическими координатами и часовыми поясами. Я решил сделать проект с расчетом долготы дня, но используя не все города, а только самые крупные. После фильтрации по населению, оставил 7500 мест.

Сделать скрипт расчета долготы дня — дело одного двух дней, так как в стандартной библиотеке PHP есть функции по работе со временем восхода и рассвета.

Приведу пример небольшого php скрипта на Laravel, который делает расчет долготы дня на три дня (вчера, сегодня, завтра).

public function sunriseNow($lat, $lng, $iana) { date_default_timezone_set($iana); $lastDay = Carbon::now()->subDay()->format('Y-m-d H:i:s'); $now = Carbon::now()->format('Y-m-d H:i:s'); $nextDay = Carbon::now()->addDay()->format('Y-m-d H:i:s'); $massDate = [$lastDay, $now, $nextDay]; $day = []; $a = 0; foreach($massDate as $key) { $sun_info = date_sun_info(strtotime($key), $lat, $lng); $a++; $sunrise = date("H:i:s", $sun_info['sunrise']); $transit = date("H:i:s", $sun_info['transit']); $sunset = date("H:i:s", $sun_info['sunset']); $day[$a] = $sunrise; $a++; $day[$a] = $transit; $a++; $day[$a] = $sunset; } $dateSunriseToday = Carbon::createFromTimeString($day[4]); $dateSunriseYestoday = Carbon::createFromTimeString($day[1]); $dateSunsetToday = Carbon::createFromTimeString($day[6]); $dateSunsetYestoday = Carbon::createFromTimeString($day[3]); $totalDurationSunrise = $dateSunriseYestoday->diffInMinutes($dateSunriseToday, false); $totalDurationSunset = $dateSunsetYestoday->diffInMinutes($dateSunsetToday, false); if($totalDurationSunrise < 0) { $color = 'red'; } elseif($totalDurationSunrise > 0) { $totalDurationSunrise = "+".$totalDurationSunrise; $color = 'green'; } elseif($totalDurationSunrise === 0){ $color = 'black'; } if($totalDurationSunset < 0) { $color = 'red'; } elseif($totalDurationSunset > 0) { $color = 'green'; $totalDurationSunset = "+".$totalDurationSunset; } elseif($totalDurationSunset === 0){ $color = 'black'; } $printSunrise = " <span style='color:$color'><small>".$totalDurationSunrise."</span> мин.</small>"; $printSunset = " <span style='color:$color'><small>".$totalDurationSunset."</span> мин.</small>"; if($totalDurationSunset === 0) { $printSunset = ''; } if($totalDurationSunrise === 0) { $printSunrise = ''; } $day[4] = $day[4].$printSunrise; $day[6] = $day[6].$printSunset; return $day; }

Как видим ничего сложного нет. Немного модифицировав скрипт, можно получить расчет на любой период.Так как все страницы проекта являются однотипными, затраты на перевод сводятся к минимуму. Фактически надо перевести мета теги, небольшие отрывки текста и шаблонные данные (даты и др.). Добавив данные о погоде и текущем времени в заданном часовом поясе, страницы становятся еще информативнее.

Получается, чтобы создать проект на 10 тысяч страниц на английском языке надо:

  • Приобрести базу городов;
  • Купить или сверстать легкий шаблон;
  • Написать несколько php скриптов;
  • Сделать перевод объемом 2-3 страницы;
  • Купить несколько иконок.

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

Готов ответить на ваши вопросы. Спасибо за внимание!

2 комментария

И если все это посадить на трастовый старый домен.. то будет счастье :)

Да, в плане SEO нужна работа.