Какими способами можно скрыть/заблюрить изображение товара для неавторизованных пользователей?
В общем, нужно сделать условие, что изображения в товарах открываются только после авторизации на сайте (см скрин
). Есть какие-либо плагины или код?
Дополнительно
фриланс в помощь
Ответы:
В CSS есть backdrop-filter: blur(120px).
Делайте проверку на авторизованного пользователя и убирайте значение в 0px прямо в инлайн-стиле.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос

Если нужно действительно скрыть изображение товара от неавторизованных пользователей, одного CSS blur недостаточно. Blur скрывает картинку визуально, но URL изображения всё равно остаётся в HTML, и пользователь может открыть его напрямую.
Есть два уровня решения:
Для простого визуального варианта:
add_filter('woocommerce_product_get_image', function ($image, $product) { if (is_user_logged_in()) { return $image; } return '<div class="locked-product-image">' . $image . '<span>Войдите, чтобы увидеть фото</span></div>'; }, 10, 2);
.locked-product-image img { filter: blur(12px); pointer-events: none; } .locked-product-image { position: relative; overflow: hidden; }
Для настоящей защиты нужно не выводить URL оригинала вообще: показывать заглушку, а оригиналы хранить вне публичной папки или отдавать через PHP-контроллер с проверкой авторизации. Это сложнее, но только так можно закрыть доступ реально.
Если задача коммерческая и изображения ценны, делайте серверную защиту. Если нужно просто мотивировать к входу, хватит blur/заглушки.