Це хороший підхід до зображення Lazy Loading for SEO?


14

Для зображень, завантажених через AJAX, або які я не хочу індексувати, використовуйте підхід атрибутів data- *:

<img data-src="path/to/image.jpg" class="js-lazy-load" />

Javascript відображає атрибут data-src до атрибуту src :

<img src="path/to/image.jpg" />

Але для зображень у форматі HTML , що я дійсно хочу проіндексований:

<a href="path/to/image.jpg" class="js-lazy-load">Image alt text here</a>

Javascript замінює якір з зображенням тегом:

<img src="path/to/image.jpg" alt="Image alt text here" />

Здається, це дозволило б зберегти індекс-здатність та цільову сторінку (для доступності), не впливаючи на SEO (сподіваємось). Але хотілося б другої думки.

Редагувати: Будь-які відгуки про те, як цей підхід - сторінка із посиланнями на зображення порівняно зі сторінкою із вбудованими тегами IMG - порівнюватиме би за рангом сторінки. Я здогадуюсь, що вбудовані теги IMG пройдуть краще, оскільки кожне вихідне посилання буде погіршувати загальний рейтинг сторінки (якщо тільки вони не мають rel = "nofollow", що було б протилежним продуктивності).


Вихідні посилання не погіршують ваш рейтинг сторінки. Так не працює PR.
Lèse majesté

Чи може загальна кількість вихідних посилань погіршити PR, який має кожне посилання? Тож якби на початковій сторінці було 5 посилань - кожне з 20% PR - але при такому підході було б 50 - кожен з них мав би 2%?
Aeron

Це правильно. Обсяг PR, який передається , ділиться на кількість посилань на сторінці, але завдяки скульптуванню PR, nofollowпосилання тепер також включаються під час поділу PR між посиланнями. Тож навіть якщо у вас є 45 наступних посилань і 5 регулярних посилань, 5 регулярних посилань все одно передаватимуть лише 2% соку посилання. Хоча якби Google був розумним, вони ставляться до зображувальних посилань інакше, ніж до HTML посилань, оскільки ваше рішення є правильним для зручності використання та доступності, і його не слід відмовляти, розбавляючи ваш потік PR.
Lèse majesté

Відповіді:


10

Це хороший підхід. Інший підхід, який ви можете скористатись, - це використовувати <noscript />елемент для зберігання нормальної версії imgтегу, який буде індексовано Google, а JS - для створення лінивої версії завантаження.

Крім того, ви можете використовувати конвенції AJAX від hashbang Google у поєднанні з API історії HTML5 для створення статей сторінок сторінок, що мають закладки та індекс. Це особливо бажано, якщо ви робите якусь нескінченну сторінку прокрутки, оскільки вона надає форму псевдопагінації - те, чого більшості нескінченних програм прокрутки відчайдушно потрібно ( :: кашель: Google Images :: кашель ::) .


Редагувати: Використання посилань як заповнювачів зображень може спричинити поділ PR-сторінки на більшу кількість посилань, хоча PR завжди зберігається, якщо ви не використовуєте nofollowце теоретично, це збільшить PR цих зображень для пошуку зображень.

Якщо ви цього не хочете, або ви хочете, щоб сторінка граціозно погіршилася для користувачів, які не є JS, ви можете піти навпаки і почати з звичайних зображень, але використовуючи блокування JS, щоб замінити srcатрибут зображень при завантаженні сторінки (або навіть просто видаліть елементи зображення і збережіть srcатрибути у вашій ліні завантажувальної черги). Якщо ви зробите це правильно, ви можете зробити це до того, як будь-яке із зображень насправді почне завантажувати.


2
Мені б хотілося це побачити - Google не розглядає, <noscript>і я ще не знайшов способу блокувати завантаження зображень у Firefox; Заміна src(навіть з <script>тегом одразу після <img>тега) не схоже, що перешкоджає завантаженню зображення в останню версію Firefox. Якщо ви знаєте інший спосіб зробити це, будь ласка, поділіться!
mindplay.dk

@ mindplay.dk: Google може вирішити не використовувати noscriptтекст у фрагментах, але все, що я прочитав, змушує мене повірити, що він робить індексний noscriptвміст загалом. Однак ви маєте рацію щодо заміни src. Моя оригінальна думка полягала в тому, щоб поставити script перед першим зображенням, щоб воно блокувало завантаження зображень до моменту завантаження та виконання сценарію. Але при більш детальному огляді це не спрацює, оскільки зображення не з’являться у DOM на той момент. Ви можете заблокувати завантаження, збільшивши одночасно з'єднання з хостом, але це недоцільно в ці дні.
Lèse majesté

Брудний хак хто - то придумав, щоб використовувати JS закомментировать JS-безкоштовні зображення , як це (є більш довга версія , яка має справу з спекулятивним парсинга): <script>document.write('<'+'!--');</script><img src=...><!---->. Вам доведеться вирішити, чи прийнятний це підхід.
Lèse majesté

2

Я бачив зображення, завантажені з цим малюнком:

<img data-src="path/to/image.jpg" class="js-lazy-load" />

підбирають Google і Google Image Image, і інші також помітили це. Оскільки Google зараз виконує JavaScript на вашій сторінці, можливо, не потрібно вводити фактичне зображення в атрибут src. Нехтування атрибутом src може призвести до сірої межі навколо вашого зображення, тому, ймовірно, найкраще працювати з чимось на зразок:

<img src="placeholder.gif" data-src="path/to/image.jpg" class="js-lazy-load" alt="Image alt text here" />

Nb. це не обов'язково стосується інших пошукових систем.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.