Экран прыгает с адаптивными объявлениями AdSense

Наши пользователи жалуются на подёргивания экрана при загрузке темы на iPhone. Это очень похоже на проблему, решённую в июле:

Мы используем:

  • Виртуальный сервер Digital Ocean: 1 ГБ ОЗУ, 25 ГБ диска
  • Плагин рекламы с AdSense, версия 2.4.0.beta 9
  • Плагин Online User

Это небольшой форум с 800 пользователями и следующими метриками:

Мы установили агент метрик Digital Ocean для получения более подробной информации.

Может ли это быть проблемой производительности? Нужно ли нам увеличить объём ОЗУ?

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

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

Это было настолько раздражающим и мешающим нашим пользователям, что нам пришлось просто отключить эту опцию.

Вызывает ли вставка рекламы каждые N постов изменение размера постов на мобильных устройствах, @neil?

Я думал, @eviltrout уже разобрался, и проблема была исправлена. @Cazadividendos @Paracelsus О какой рекламной платформе речь? Какой размер рекламы? Вы говорите, что подёргивания происходят только на мобильных устройствах?

Проблема была сообщена только на iPhone. На Android всё работает как ожидается, без скачков.
Платформа для рекламы: Adsense
Размер рекламы: адаптивный (как для обычных, так и для мобильных объявлений)
Код Adsense для nth поста: 5

У меня (были) точно такие же настройки, как у Cazadividendos, за исключением того, что реклама появлялась в каждом 10-м посте. И пользователи Android, и пользователи iPhone сообщают о том же поведении (особенно в мобильном Chrome).

На самом деле, я подозреваю, что то же самое происходило и в десктопной версии, но поскольку там гораздо больше вертикального пространства, вы всё ещё можете заметить это визуально, не прокручивая страницу постоянно.

Если хотите, я могу активировать это, и вы сможете увидеть это своими глазами. Это поможет, @neil?

Хорошо, я снова активировал эту опцию, и проблема с дерганьем вернулась. :smiley:

Если вы будете медленно прокручивать между сообщениями 684 и 686 (и время от времени останавливаться, как будто читаете каждое сообщение), то поймете, о чем мы говорим…

Я попробую кратко изложить, что здесь происходит… :confounded:

Я уже упоминал об этом в другой теме, пожалуйста, прочитайте:

Поглубже изучив вопрос, я попытался использовать CSS, чтобы задать размеры контейнеру, в котором должны отображаться адаптивные объявления между постами. Вот пример:

.adsense-post-bottom.adsense-responsive {
  height: 100px; // не выше этого, пожалуйста
}

Но… происходит следующее:

Я не могу найти ничего в плагине для рекламы или в ядре Discourse, что добавляло бы эти встроенные стили с !important. Похоже, что JS AdSense выбрал ядерный вариант и очень хочет навязывать произвольные высоты контейнеру. Так что всё с авто !important!

Похоже, что AdSense сделал это невозможным. Теперь варианты следующие:

  1. Удалить опцию размера “responsive” из плагина AdSense (для тех, кто сейчас использует размер “responsive”, будет использоваться запасной вариант: 728x90 для десктопа, 300x250 для мобильных).
  2. Удалить опцию “responsive” только для размещения между постами (хотя скачки происходят во всех размещениях).
  3. Создать тему здесь на Meta о проблеме, разрешить людям继续使用 “responsive” и добавить ссылку на неё в описании всех настроек размера AdSense.
  4. “Авто !important” исходит от плагина для рекламы или ядра Discourse, и я не могу его найти?

РЕДАКТИРОВАНИЕ:

Возможно, я теперь понимаю это предложение:

То есть нужно будет иметь возможность выбрать “responsive”, а затем установить максимальную ширину и максимальную высоту в настройках плагина.

Закрываю эту тему и продолжу обсуждение здесь: