Можно ли в Друпал 7 роботу скармливать одну картинку, а пользователю - другую?

Аватар пользователя Alex1989_drupal Alex1989_drupal 28 октября 2019 в 18:07

Всем привет. Есть тип материала новость в Друпал 7.
Стандартное поле - Image с кропом на 600px.
Мне нужно роботу для AMP страниц отдавать картинку выше 1200px.
Как такое реализовать?
Я не хочу загружать 1200 для пользователей, т.е. дизайн этого не предусматривает, по верстке нужна 600px. Да и 1200px весит больше.
Можно ли в Друпал 7 роботу скармливать одну картинку, а пользователю - другую? Как такое сделать?

Комментарии

Аватар пользователя bumble bumble 28 октября 2019 в 20:03

Ну, если вопрос в том чтоб растянуть картинку - можно подготовить пресет с помощью Imagecache actions, и потом использовать его в нужных местах.

Аватар пользователя Alex1989_drupal Alex1989_drupal 28 октября 2019 в 20:50

а как хранить два разрешения одной и той же картинки как в вордпресс?
Пользователю я показываю 600px
а роботу 1200px?

Аватар пользователя bumble bumble 28 октября 2019 в 20:55

На каком моменте и каким способом Вы определяете кто на сайте - робот, или пользователь?

Аватар пользователя Alex1989_drupal Alex1989_drupal 28 октября 2019 в 20:58

отдаю через schema (jscon+ld) разметку роботу
ну а пользователь что открыл в браузере - то и видит

Аватар пользователя bumble bumble 28 октября 2019 в 21:15

В настройках тегов, на сколько я помню, указываются токены. Нужно использовать токен изображения с необходимым пресетом. Что-то вроде [node:FIELD_NAME:PRESET_NAME:path] (сорри, нет под рукой на чем проверить).

Аватар пользователя Alex1989_drupal Alex1989_drupal 28 октября 2019 в 21:23

Все верно, но как в друпал скормить две картинки (два пресета)?

по-умолчанию предлагается только один.

Аватар пользователя bumble bumble 28 октября 2019 в 21:25

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

Аватар пользователя Alex1989_drupal Alex1989_drupal 28 октября 2019 в 21:28

Разве это физически создаст две разные картинки?
На сколько я знаю, пресет картинки создается в момент обращения к ней юзера (физического просмотра ноды)
На счет перехода робота я не уверен, нужно будет проверить завтра на локле

Аватар пользователя Alex1989_drupal Alex1989_drupal 28 октября 2019 в 21:33

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

Аватар пользователя Alex1989_drupal Alex1989_drupal 30 октября 2019 в 13:31

Не работают такие токены. Поле url остается пустым при выводе.
Пробовал
[node:field_image:large:url]
[node:field_image:large:path]
[node:field_image:large:800:url]

При просмотре токенов, к field_image почему-то не предлагается дописывание url
Работает только [node:field_image], но оно выводит картинку без пресета