Как можно включить индексацию текста, содержащегося внутри аккордеона на JavaScript?

В Google Search Console у меня появились предупреждения о том, что текст внутри аккордеона на JavaScript (который раскрывается при нажатии) не индексируется. Сайт работает на WordPress. <br/> Вся остальная страница индексируется корректно, однако контент, который открывается с помощью JavaScript, не индексируется. <br/> Можете проверить это по ссылке: <a href="https://walba-dynamics.com/ru/uslugi-marketologa/" rel="nofollow">https://walba-dynamics.com/ru/uslugi-marketologa/</a> <br/> 
  • 30 августа 2024 г. 12:34
Ответы на вопрос 2
Индексация текста, который отображается с помощью JavaScript, может быть проблемой, так как поисковые системы иногда имеют трудности с рендерингом контента, который появляется только по событию (например, при клике на аккордеон). Чтобы обеспечить лучшую индексацию контента внутри аккордеона на вашем сайте WordPress, можно предпринять несколько шагов:

1. **Убедитесь, что контент доступен без JavaScript**:
   - Проверьте, возможно ли развернуть аккордеон, чтобы контент был виден при загрузке страницы. Можно с помощью HTML/CSS сделать так, чтобы части контента были видны по умолчанию, или сделать их доступными для индексации средствами SEO.

2. **Используйте `noscript` теги**:
   - Оберните текст, который находится внутри аккордеона, в `<noscript>`, чтобы поисковые системы могли его видеть, если JavaScript отключен.
   ```html
   <div class="accordion">
       <button class="accordion-header">Заголовок</button>
       <div class="accordion-content">
           <p>Текст внутри аккордеона.</p>
       </div>
       <noscript>
           <p>Текст внутри аккордеона (для индексации).</p>
       </noscript>
   </div>
   ```

3. **Информируйте поисковики о контенте**:
   - Используйте метатеги или структурированные данные для указания на важный контент, который может быть недоступен из-за JavaScript. Это поможет поисковым системам лучше понять структуру вашей страницы.

4. **Применение серверного рендеринга**:
   - Если возможно, используйте серверное рендеринг (SSR) для вашего JavaScript-код, чтобы текст внутри аккордеона генерировался на сервере и был доступен при первой загрузке страницы. Например, вы можете выводить основной текст в HTML и скрывать его с помощью CSS, чтобы его можно было отобразить при раскрытии аккордеона.

5. **Проверка в Google Search Console**:
   - Используйте инструмент URL Inspection в Google Search Console, чтобы проверить, как Googlebot видит вашу страницу. Это поможет вам удостовериться, что аккордеон и его содержимое правильно индексируются.

6. **Убедитесь, что JavaScript загружается правильно**:
   - Убедитесь, что JavaScript, который отвечает за аккордеон, не блокируется, и загружается корректно. Отключение блокировок может помочь в рендеринге контента.

Каждый из этих шагов может помочь вашему сайту загружать содержимое аккордеона для индексации. Не забудьте протестировать изменения и следить за отчетами в Google Search Console, чтобы посмотреть, улучшилась ли индексация.
Думаю, дело в том что Elementor рисует html внутри аккордеона только на клиенте. Попробуй сделать как тут
Похожие вопросы