оптимизированный для seo модальный диалог jquery

#javascript #jquery #modal-dialog

#javascript #jquery #модальный диалог

Вопрос:

Оптимизирован ли seo модальный диалог jQuery? Если нет, то какие изменения мы можем внести, чтобы содержимое внутри модального диалога могло быть легко прочитано сканером?

Заранее спасибо.

Редактировать: Извините, забыл упомянуть, что содержимое в модальном режиме поступает со стороны сервера. таким образом, он также использует ajax.

Ответ №1:

Если содержимое вашего диалога просто находится на странице и «превращается в модальный диалог jquery», то оно будет частью данных, к которым может получить доступ поисковый робот…Если содержимое загружается через ajax и т.д., То оно не будет проиндексировано, поскольку для заполнения html требуется запуск javascript.

 ...
<body>
<div id="MyModalDialog">
   This is content I want the search engine to index. As it exists in the page without needing any javascript to exist here, it could be indexed.
</div>
<input value="Show Dialog" id="ShowDialog" />
</body>
...
  

Редактировать
Если для содержимого каким-либо образом требуется javascript и он еще не был частью исходного запроса, то в принципе можно предположить, что поисковый робот не будет его индексировать.

Правка 2
Если вам нужна стратегия для преодоления этого. Если вы использовали html-ссылку для открытия диалогового окна, при условии, что ссылка правильно открывает URL, у вас всегда может быть запасной вариант для браузеров / клиентов / сканеров, у которых не включен javascript, и тогда содержимое может быть проиндексировано…но он будет проиндексирован по исходному URL … по которому вы, возможно, не захотите, чтобы люди заходили на ваш сайт…

Что-то вроде этого:

 <div id="dialog">
</div>
<a href="/page/to/index/content" class="open-dialog">Open Dialog</a>
  

и сценарий

 $(function() {

   $("a.open-dialog").click(function(e) {
       e.preventDefault();

       // get the url that this link is going to open
       var url = $(this).attr("href");

       // put contents in div and show dialog
       $("#dialog").load(url).dialog({modal:true});
   });

});
  

Таким образом, поисковый робот просто перейдет по ссылке из тега a на другой контент и, возможно, проиндексирует его … надеюсь, это имеет смысл … в противном случае код jquery отменит щелчок по ссылке и откроет содержимое в диалоговом окне.

Комментарии:

1. Извините, забыл упомянуть, что содержимое модального диалога поступает со стороны сервера. таким образом, он также использует ajax.

2. @Kin, может ли это поступать со стороны сервера во время создания браузером страницы «хост»?

3. @davidsleeps нет : ( это запрос пользователя, поэтому, когда пользователь нажимает на URL, данные извлекаются с сервера. Если я загружу его при загрузке страницы, сайт замедлится из-за огромного количества данных.

4. @Kin, вот возможный обходной путь… Возможно, я не понял это правильно… по сути, это псевдокод.

5. @davidsleeps Я думаю, что это определенно сработает. Меня беспокоит только то, что Google начнет отображать «/ страница / в / индекс / контент» в результатах поиска? Но я думаю, что могу в некоторой степени использовать вашу идею и модифицировать ее, чтобы она работала на меня. Спасибо.