Как показать при клике всю статью (но без индексирования)


alexverem
645

Всем привет,

Нужно показывать статью, но только часть, при клике по ЕЩЕ нужно отобразить ее полностью.

Пример: https://www.tripadvisor.ru/Restaurant_Review-g196538-d1082778-Reviews-Maison_Lameloise-Chagny_Saone_et_Loire_Bourgogne_Franche_Comte.html

Единственное, что скрытую часть текста индексировать не нужно. Какие есть варианты? Вроде через ajax, я посмотрел вроде немного мудрено.

Может быть через

<script>

document.write('</td>')
</script>

или может есть лучше вариант? Спасибо.


ivan-lev

alexverem:
Может быть через

Может, и так.. почему нет?

alexverem:
может есть лучше вариант? Спасибо.

Можно и лучше найти.. лучшее ведь враг хорошего =)

Вариантов куча.. у каждого свои плюсы-минусы найдутся.. Можно в <noindex>.. или в js или ajax-ом подгружать..


ziliboba0213

ivan-lev:
Может, и так.. почему нет?

Можно и лучше найти.. лучшее ведь враг хорошего =)

Вариантов куча.. у каждого свои плюсы-минусы найдутся.. Можно в <noindex>.. или в js или ajax-ом подгружать..

Не индексируется только аякс вроде… Ноиндекс и js прочитает. Ну это я вроде слышал, не претендую на истину 🍿


Васо Вчеразаши

document.write заменяет своим содержимым ВСЮ страницу, если выполняется не одновременно с загрузкой страницы.


Samail

Думаю document.write поисковики без проблем проиндексируют. Аяксом уже сложнее им будет и вариантов как не пустить бота к контенту, больше.


alexverem

Samail:
Думаю document.write поисковики без проблем проиндексируют. Аяксом уже сложнее им будет и вариантов как не пустить бота к контенту, больше.

Спасибо всем за ответы, думаете write будет индексировать? мне кажется прочитает, но вряд ли будет выдавать в поиске?

———- Добавлено 09.02.2020 в 18:29 ———-

кто нибудь понял как сделано в ссылке моей в примере? ajax?

———- Добавлено 09.02.2020 в 18:31 ———-

проверил, у них не индексируется то, что спрятано, значит рабочий вариант

———- Добавлено 09.02.2020 в 18:31 ———-

я про tripadvisor

———- Добавлено 09.02.2020 в 18:31 ———-

Вот у них код, как думаете что это за реализация?

<span class=»taLnk ulBlueLinks» onclick=»widgetEvCall(‘handlers.clickExpand’,event,this);»>Еще</span>


ArbNet


<!DOCTYPE html>
<html>
<head>
<title>Title</title>
<meta name="robots" content="none"/>
</head>
<style>
xmp {
margin: 0;
padding: 0;
display: inline-block;
}
</style>
<body>
<div id=statya>
Если вы прописали мета-тег <xmp><meta name="robots" content="noindex"/></xmp>, то ссылки на странице все будут доступны для поисковых систем и роботы будут переходить по ним. Поэтому необходимо добавить атрибут nofollow, если хотите полностью запретить индексацию страницы. Выглядеть это может следующим образом: <xmp><meta name="robots" content="noindex, nofollow"/> или <meta name="robots" content="none"/></xmp>.
<a href=# onclick="Show('#statya')">Продолжение статьи</a><br>
<noindex hidden>
Не индексируемый текст статьи
</noindex>
</div>
<script>
function Show(id){
let el=document.querySelector(id);
el=el.getElementsByTagName('noindex')[0];
el.hidden=el.hidden?false:true;
return false;
}
</script>
</body>
</html>

может так

или так


<!DOCTYPE html>
<html>
<head>
<title>Title</title>
<meta name="robots" content="none"/>
</head>
<style>
xmp {
margin: 0;
padding: 0;
display: inline-block;
}
</style>
<body>
<div id=statya>
Если вы прописали мета-тег <xmp><meta name="robots" content="noindex"/></xmp>, то ссылки на странице все будут доступны для поисковых систем и роботы будут переходить по ним. Поэтому необходимо добавить атрибут nofollow, если хотите полностью запретить индексацию страницы. Выглядеть это может следующим образом: <xmp><meta name="robots" content="noindex, nofollow"/> или <meta name="robots" content="none"/></xmp>.
<div id=statya-forth><a href=# onclick="Show('#statya-forth')">Продолжение статьи</a></div>
</div>
<script>
function Show(id){
let el=document.querySelector(id);
el.innerHTML='Не индексируемый текст статьи';
return false;
}
</script>
</body>
</html>


silicoid

ziliboba0213:
Не индексируется только аякс вроде…

Как показывает практика. Индексируется. Но без гарантии. Вообще все поисковики уже давно обзавелись хорошей поддержкой яваскриптов.

offtop

ArbNet, зачем вы используете деприкейтнутый еще со времен html3.2 тэг <xmp> вместо <pre> ?


Sitealert

alexverem:

<script>

document.write('</td>')
</script>

Не будет работать. И вообще, document.write следует применять только по крайней необходимости, если не нужны гарантированные тормоза. Либо innerHTML, либо AJAX.


ziliboba0213

silicoid:
Как показывает практика. Индексируется. Но без гарантии.

Если по клику на див, то не индексит. Ну у меня по крайней мере :p


ivan-lev

ziliboba0213:
Если по клику на див, то не индексит. Ну у меня по крайней мере

Поисковик просто не на тот див кликал.. =)

silicoid:
Как показывает практика. Индексируется. Но без гарантии

Скорее так.. если соблюдать рекомендации, то сайт проиндексируется.. =)

https://yandex.ru/support/webmaster/robot-workings/ajax-indexing.html

https://support.google.com/webmasters/answer/81766?hl=ru

При этом можно намеренно запретить индексацию..

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *