Как сделать поле не индексируемым?

InstantCMS 2.X
#1 27 января 2021 в 10:07
Есть компонент, Прайс-лист + калькулятор. У него имеется виджет и поле.
Работа компонента нужна на сайте, но в некоторых типах контента надо сделать поле не видимым для индексации.
Как это сделать?
Разработчик начал это реализовывать еще в декабре, но исчез. Так что к нему не посылайте… smile
#2 27 января 2021 в 10:33
vikont, сделать его доступным только для зарегистрированных юзеров
#3 27 января 2021 в 10:47


vikont, сделать его доступным только для зарегистрированных юзеров

AndroS
Так не пойдет! Нельзя заставлять покупателя региться на сайте только для того, чтобы увидеть прайс… shock
#4 27 января 2021 в 12:38
Параметры передаются в шаблон того, что вы не хотите, чтобы индексировалось? Или, в компоненте как-то сделать в нужном месте просто передайте в шаблон:

  1. <meta name="robots" content="noindex">
Нужно найти то, к чему можно привязаться и передать в шаблон, или в самом шаблоне в условии.
#5 27 января 2021 в 13:16

Разработчик начал это реализовывать еще в декабре, но исчез.

vikont
Да вроде 6 дней назад был, если вы про этот компонент.
#6 27 января 2021 в 13:20


Разработчик начал это реализовывать еще в декабре, но исчез.

vikont
Да вроде 6 дней назад был, если вы про этот компонент.

fincheck
Про него! На письма точно не отвечает и в скайпе не показывается.
Может быть я еще и слишком хорошо о нем думаю? А он просто "забил" на всех… мол "кувыркайтесь"...?
#7 27 января 2021 в 23:55


Параметры передаются в шаблон того, что вы не хотите, чтобы индексировалось? Или, в компоненте как-то сделать в нужном месте просто передайте в шаблон:

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

@Evg
Спасибо за подсказку, но с помощью метатега
  1. <meta name="robots" content="noindex">
Смогу отключить поле, но во всем сайте! А как отключить поле хотя бы в выбранном типе контента.
Лучше всего конкретное поле в выбранной записи.
#8 28 января 2021 в 02:07


Смогу отключить поле, но во всем сайте! А как отключить поле хотя бы в выбранном типе контента.
Лучше всего конкретное поле в выбранной записи.

vikont
Не получилось. Вопрос остался открытым, как удалить поле из индекса?
#9 28 января 2021 в 08:39
Я просто не совсем понимаю "отключить поле". Мне проще говорить используя понятия документы или страницы. С помощью кода приведенного выше, вы можете выборочно запрещать к индексированию отдельные документы, страницы сайта. Пример.

Есть профили пользователей. И есть задача, не закрывать профили от индексирования. Однако, хотелось бы сделать так, чтобы профили новых участников не индексировались. Почему? Возможен такой сценарий. Человек регистрируется, не пишет ничего, активность его ноль, вклад ноль, но он заполняет профиль своей рекламой или ссылками на сайты. Его цель — регистрация и оставить ссылку с профиля. Такое кстати бывает на многих форумах.

Есть и услуга — ссылка с профилей в SEO, где горе seo- продвиженцы ищут профили разные (на форумах, блогах) и там размещают ссылку. Понятно не бесплатно.

Так вот. В этих условиях можно, что сделать? Привязать индексацию к карме, например. Скажем, если карма не будет меньше 100, то и профиль не будет индексироваться. Просто добавляют код на страницу, на те страницы профилей, где карма меньше 100.

Чтобы вывести такое условие мне собственно надо.

1. помещать этот код на страницы только профилей (ну раз мы говорим о профиле)
2. но добавлять этот код только тогда, когда карма меньше 100.

Это тот случай про "поля"? Если поле приобретает какое-либо значение, то страница на котором идет вывод поля больше не индексируется. Или, вы хотите в теле самой страницы запретить индексирование части страницы? Если так, то ед. верный способ сделать, чтобы этот текст без авторизации был не виден. А если вы хотите запретить выборочно индексировать документы в зависимости от каких-то условий, то с помощью meta- кода.

P.S. я сейчас специально говорю о странице, а не о ссылке. Знаю, что в ссылке ранее ставили nofollow, чтобы не передавать вес и не давать пауку идти дальше. К сожалению, это условие больше не работает. nofollow стал рассматривать, как рекомендация. И если по ссылке есть траф (переходы), то поиск с огромной вероятностью не будет учитывать nofollow. А раз так, то приходится говорить о самой странице, целиком.

Вроде все подправил. crazy
#10 28 января 2021 в 10:49


Я просто не совсем понимаю "отключить поле". Мне проще говорить используя понятия документы или страницы. С помощью кода приведенного выше, вы можете выборочно запрещать к индексированию отдельные документы, страницы сайта. Пример.

Есть профили пользователей. И есть задача, не закрывать профили от индексирования. Однако, хотелось бы сделать так, чтобы профили новых участников не индексировались. Почему? Возможен такой сценарий. Человек регистрируется, не пишет ничего, активность его ноль, вклад ноль, но он заполняет профиль своей рекламой или ссылками на сайты. Его цель — регистрация и оставить ссылку с профиля. Такое кстати бывает на многих форумах.

Есть и услуга — ссылка с профилей в SEO, где горе seo- продвиженцы ищут профили разные (на форумах, блогах) и там размещают ссылку. Понятно не бесплатно.

Так вот. В этих условиях можно, что сделать? Привязать индексацию к карме, например. Скажем, если карма не будет меньше 100, то и профиль не будет индексироваться. Просто добавляют код на страницу, на те страницы профилей, где карма меньше 100.

Чтобы вывести такое условие мне собственно надо.

1. помещать этот код на страницы только профилей (ну раз мы говорим о профиле)
2. но добавлять этот код только тогда, когда карма меньше 100.

Это тот случай про "поля"? Если поле приобретает какое-либо значение, то страница на котором идет вывод поля больше не индексируется. Или, вы хотите в теле самой страницы запретить индексирование части страницы? Если так, то ед. верный способ сделать, чтобы этот текст без авторизации был не виден. А если вы хотите запретить выборочно индексировать документы в зависимости от каких-то условий, то с помощью meta- кода.

P.S. я сейчас специально говорю о странице, а не о ссылке. Знаю, что в ссылке ранее ставили nofollow, чтобы не передавать вес и не давать пауку идти дальше. К сожалению, это условие больше не работает. nofollow стал рассматривать, как рекомендация. И если по ссылке есть траф (переходы), то поиск с огромной вероятностью не будет учитывать nofollow. А раз так, то приходится говорить о самой странице, целиком.

Вроде все подправил. crazy

@Evg
Спасибо, что уделили столько времени! Но проблема в том, что не должно индексироваться только поле компонента Прайс-лист + Калькулятор, содержащее прайс-лист. А все остальное поисковик должен обрабатывать.

Как это вижу, поисковик открывает страницу и при индексации натыкается на <noindex> и все то, что между командами запрета индексаци, он пропускает, а посетитель видит всю страницу.

А вот как поставить запрет на индексацию поля, я не знаю. Где прописывать и что именно. Пробовал прописывать и метатеги и команды, но либо где то делаю ошибки, либо не в тех файлах. Перерыл весь компонент.
#11 28 января 2021 в 11:24
Вы можете изучить, как различные теги влияют на индексирование в зависимости от поисковой системы. Скажем, noindex не работает для ряда поисковиков. Вообще.

Для Гугла были эксперименты использовать: data-nosnippet HTML attribute
developers.google.com/search/reference/robots_meta_tag#data-nosnippet-attr

Но мой совет, не теряйте время.

Если вы хотите закрыть для индексации часть страницы, то единственный надежный способ (если это можно называть надежным) не показывать её. Если текст на странице видит неавторизированный пользователь, то его увидит и поиск. Всё остальное не работает.
#12 28 января 2021 в 12:25


Вы можете изучить, как различные теги влияют на индексирование в зависимости от поисковой системы. Скажем, noindex не работает для ряда поисковиков. Вообще.

Для Гугла были эксперименты использовать: data-nosnippet HTML attribute
developers.google.com/search/reference/robots_meta_tag#data-nosnippet-attr

Но мой совет, не теряйте время.

Если вы хотите закрыть для индексации часть страницы, то единственный надежный способ (если это можно называть надежным) не показывать её. Если текст на странице видит неавторизированный пользователь, то его увидит и поиск. Всё остальное не работает.

@Evg
Если закрыть от индексации всю страницу, тогда зачем она нужна? Чтобы страницу увидел посетитель ее еще надо протолкнуть через поисковик. shock
В общем я вас понял. Хотя разраб утверждал, что элементарно может закрыть свое поле от индексации поисковиками. Как знать, может быть трепло?
#13 28 января 2021 в 12:50
Может мы говорим о разном. Я просто не оперирую словами "поле". Есть вход на страницу — ссылка (как дверь), и есть страница (как комната), и есть элементы в комнате (на странице). Так вот. Дверь, ссылка, находится не под вашим контролем. Вы можете максимум рекомендовать не входить в неё. Конечно, я говорю про классическую ссылку (дверь) с href.

Теперь комната. Есть вариант полностью закрыть её для индексации. Это просто. А вот вариант закрыть частично, но показать её неавторизированным, боюсь ничего тут не выйдет. Ранее были теги разные, теперь собственно глобально они не работают.

У вас страница же состоит из элементов. 1,2,3,4,5… Вы хотите, чтобы элемент допусти 3, который получает данные с поля этого не индексировался? Я и написал, единственно гарантированный способ сделать это, не показывать его без авторизации. Саму страницу же можно показывать. Остались ещё элементы 1,2,4,5.
#14 28 января 2021 в 14:51


Я и написал, единственно гарантированный способ сделать это, не показывать его без авторизации. Саму страницу же можно показывать. Остались ещё элементы 1,2,4,5.

@Evg
Спасибо! Вы единственный кто пытается помочь. Но задача либо не имеет решения либо решения не имеют смысла.
Закрыть от не авторизованных, в которые попадут и поисковики, конечно проще и решаемо без бубнов. Но теряется всякий здравый смысл и даже наносится вред в виде ухода клиентов с сайта. Оно кому то надо, региться только чтобы посмотреть цены на услуги или товар??? Это же 100% гарантия убийства бизнеса. Можно сайт закрывать… Случай не тот.

Если информация очень ценная для клиента, тогда оправдан доступ через авторизацию
#15 28 января 2021 в 15:30
На примере шаблона modern в 2.14.1.

Открываем файл шаблона (не компонента) templates/modern/content/default_item.tpl.php. Строка 45, в ней код:
  1. <?php echo $field['html']; ?>
Меняем его на такой:
  1. <?php echo $field['name'] == 'fieldname' ? '<!--noindex-->'.$field['html'].'<!--/noindex-->' : $field['html']; ?>
В этом примере мы обернули содержимое поля в noindex.

fieldname — это системное имя поля.

В общем, всё можно делать в шаблоне, не ломая компонент.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.