Наш ассоциированный член www.Bikinika.com.ua

Перекласти сайт на AngularJS і не втратити в органіці. Як?

  1. Нюанси в SEO для SPA-сайтів на AngularJS, React і другом
  2. Налаштування Google Analytics для SPA-сайтів
  3. Як безпечно перейти на SPA, не втратити в органіці і стати ще крутіше?
  4. результати
  • Бізнес хоче швидкі сайти з хорошим UX.
  • Програмісти втомилися кодіть стандартні сайти на PHP, Django і хочуть використовувати свіжі, сучасні рішення.
  • Тому, здавалося б, зробити з сайту SPA (Single Page Application) за допомогою фреймворків AngularJS, React або чого-небудь подібного - ідеальне рішення для обох сторін.

    Але не все так просто. Потрібно враховувати, що:

    • бізнес хоче постійного зростання органічного трафіку (SEO);
    • програмісти часто (з особистого досвіду) концентруються на крутому продукті, але не думають про маркетинг і пошукової оптимізації.

    А в умовах високої конкуренції в органічній видачі, коли сайт займає топові позиції - навіть прості зміни верстки, дизайну та тексту іноді вносити реально очок.

    Причина в тому, що в SPA-сайтах весь контент сторінок і верстка (HTML і CSS-стилі) завантажуються асинхронно, DOM-модель змінюється на льоту. І по суті, в вихідному коді сторінки ми не бачимо практично нічого, крім встановлених скриптів в <head>, набору тегів і посилань на JS-файли. наприклад:


    У підсумку через це почнуться проблеми з пошукової індексацією.

    1. Google може перестати бачити контент сайту повністю, або частинами, а це відразу послабить позиції сторінок у видачі.
    2. У разі коли весь контент і верстка підтягується через JS-файли, інструмент в Search Console «Fetch as Googlebot» навіть може показувати, що він бачить сторінку точно так же, як і користувач. Але при цьому ми за останні півроку на 4 проектах переконувалися, що процес краулінга і індексації відбувається повільніше, ніж на звичайних сайтах, де весь контент і верстка доступні відразу в вихідному коді.
    3. Є думка, що краулер Google незабаром буде рендерить всі сторінки так, як це роблять сучасні браузери, але наша статистика говорить, що це не спрацьовує завжди і поки сподіватися на це рано.

    Тому все це діло треба поливати правильним SEO-шним соусом - тоді точно буде win-win, все будуть горді виконаною роботою, бізнес-показники будуть рости і всі будуть задоволені.

    Так наші колеги з Crediton.kz, лідери ринку Казахстану з видачі онлайн-позик, і вирішили зробити. На їх прикладі розкриємо декілька важливих нюансів, які вам обов'язково знадобляться, якщо плануєте запускати SPA-сайт.

    • Які нюанси необхідно враховувати для SEO.
    • Як правильно потрібно налаштовувати Google Analytics для складних SPA-сайтів, зроблених на AngularJS, React, vue.js.
    • На які етапи варто розбити запуск нової версії сайту і як її тестувати, щоб мінімізувати ризик просісти в органічній видачі.

    Поїхали!

    Нюанси в SEO для SPA-сайтів на AngularJS, React і другом

    1. У випадку з AngularJS рекомендуємо використовувати версію від 4.0 і вище.
    2. Рекомендуємо використовувати server side rendering, який дає статику для пошукових роботів - таким чином, контент і верстка сторінок буде вже доступна в вихідному коді браузера.
      Якщо коротко, SSR - це такий процес, в якому веб-сервер, аналізуючи User Agent клієнта, розуміє, що це пошуковий краулер, і рендерить весь контент перед віддачею сам, не покладаючись на браузер. Так краулер отримує саме той результуючий HTML, який бачить користувач в SPA.

      Пара статей на технічній мові на цю тему: перша російською мовою і друга англійською .
      Готовий приклад правильного налаштування рендеринга: credtion.kz .

    3. В процесі роботи над SSR, обов'язково використовуйте інструмент «Подивитися як Googlebot».

    4. Також актуальним є стандартний набір вимог по SEO в вигляді прописаних індивідуально для кожної сторінки Title, Metadata, згенерованого Sitemap.xml, SSL-сертифіката і так далі. Ознайомтеся з повним чекліст для SEO 2018 .
    5. Рекомендуємо закладати в розробку адмінку для оперативного зміни контенту сторінок, а також тайтлів, метаданих та Open Graph текстів.
    6. Обов'язково використовуйте для кожної сторінки окремі URL-адреси. В контексті SPA ця штука називається url routing, коли при зміні Стейт сторінки змінюється URL в адресному рядку браузера, але вся сторінка не перевантажується. В першу чергу це потрібно, щоб окремі сторінки індексувалися, а також це важливо для коректної роботи Google Analytics, щоб можна було відстежувати UX, фіксувати події та конверсії в процесі використання вашого продукту.

    Налаштування Google Analytics для SPA-сайтів

    1. Налаштуйте Google Analytics обов'язково через Google Tag Manager.
      Специфіка роботи SPA в тому, що сторінка завантажується тільки один раз, а потім в процесі використання відбувається подгрузка. І тому без додаткових налаштувань скрипт Google Analytics завантажиться 1 раз і спрацює тільки 1 pageview. У підсумку статистика буде кривої і недостовірною. Посилання на адекватний мануал по настройці Google Analytics через GTM .
    2. Для достовірності встановіть в браузер Google Tag Assistant, який дозволить перевірити роботу Google Analytics після всіх налаштувань і перевірити, чи правильно реєструються pageviews.
    3. Для всіх сторінок, які повинні індексуватися в пошуку і беруть участь в UX (які потрібно фіксувати і відслідковувати), обов'язково створюйте окремі URL-адреси.

      Жахливий приклад: https://site.kz/order/ в разі якщо в процесі проходження декількох етапів замовлення URL буде незмінним. У тому числі і на фінальній сторінці.
      Гарний приклад: https://site.kz/order/finished - дана сторінка буде цільовою. Зручно для відстеження.

    4. Для всіх кнопок в верстці, якими будуть користуватися ваші клієнти, особливо важливі шляхи начебто процесу реєстрації та покупки, задавайте унікальні значення класів (class). Тоді маркетинг зможе відстежувати події і конверсії в Google Analytics і бачити реальну картину, як клієнти використовують ваш продукт.

      Жахливий приклад: class = "orange_button" - таких кнопок на сайті може бути мільйон, і одну конкретну відстежувати не вийде.
      Хороший приклад: class = "get_credit_mainpage" - тоді можна буде дізнаватися, скільки людина, з яких джерел трафіку і як часто натискають на цю кнопку і проходять далі. Це важливо.

    Як безпечно перейти на SPA, не втратити в органіці і стати ще крутіше?

    Розпишемо етапи оновлення сайту на прикладі crediton.kz, які можна застосувати для інших проектів.

    1. Підготовка нової версії сайту на субдомені new.crediton.kz і закриття від індексації за допомогою «Disallow: /» в robots.txt для даного субдомена.
    2. Численні аудити по перерахованим вище нюансам і доопрацювання. А також збір зворотного зв'язку від клієнтів, яким надали можливість використовувати нову версію сайту.
    3. В результаті усунення помилок і доопрацювання нової версії сайту після тестувань.
    4. Налаштування Google Analytics по всій воронці продажів для кожного етапу через GTM.
    5. Перенесення new.crediton.kz на основний домен c використанням 301 редиректів + ​​можливість користувачам перейти на стару версію old.crediton.kz.
    6. Відключення старої версії сайту на користь нової більш ефективної.

    результати

    • Збільшення швидкості завантаження сторінок в 2 рази.
    • Відсутність провалів в середніх позиціях видачі.
    • Зниження показника відмов на 10%.

    Над проектом працювали:

    • Рахімов Іслам - Digital marketer (CreditOn)
    • Волобуєв Євген - Head of marketing department (CreditOn)
    • Амрен Бакберген - Senior web developer (CreditOn)
    • Федченко Леся - Digital marketer (Peklo)
    • Роман Леонов - SEO-jedi (Peklo)

    Підведу підсумки.

    Використовувати SPA-сайти круто, але головне - робити це акуратно, не поспішати і ретельно все перевіряти і налаштовувати. Швидкість і зручність сайту будуть радувати користувачів, вас і пошукові системи.

    Думка редакції може не збігатися з думкою автора. Ваші статті надсилайте нам на [email protected] . А наші вимоги до них - ось тут .

Як безпечно перейти на SPA, не втратити в органіці і стати ще крутіше?

Новости