Как условно отобразить мобильную и десктопную рекламу в Django, чтобы предотвратить дублирование JavaScript?
Я работаю над проектом на Django, в котором мне нужно показывать разные объявления для мобильных пользователей и пользователей настольных компьютеров. В настоящее время загружается JavaScript для рекламы как на мобильных устройствах, так и на настольных компьютерах, что приводит к конфликтам, поскольку скрипты мобильной рекламы мешают рекламе на настольных компьютерах. Вот упрощенная версия моего шаблонного кода:
<div class="ads-mobile">
{% ad_simple_tag "mobile_ads" %}
</div>
<div class="ads-desktop">
{% ad_simple_tag "desktop_ads" %}
</div>
Я использую Cloudflare, который кэширует страницы, поэтому я не могу полагаться на серверную логику (например, промежуточное программное обеспечение) для определения того, какие объявления показывать, поскольку результат будет кэширован.
Я попытался использовать JavaScript и/или css, чтобы определить тип устройства и соответственно скрыть/ показать или удалить рекламные блоки, но оба рекламных скрипта по-прежнему загружаются, что вызывает проблемы.
Как я могу гарантировать, что будут загружены только соответствующие рекламные скрипты в зависимости от типа устройства пользователя, учитывая, что страница кэшируется Cloudflare? Существует ли подход на стороне клиента или наилучшая практика для решения подобных ситуаций в Django?