Можно как то скрыть html блок в сайдбаре если источник захода на сайт с сайта

Можно как то скрыть html блок в сайдбаре если источник захода на сайт с сайта
с https://kwork.ru например

оберните нужный HTML-блок в следующее условие


<?php
$referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
if (strpos($referer, 'kwork.ru') === false) {
    // Блок будет показан всем, кроме тех, кто пришел с kwork.ru
    ?>
    <div class="my-sidebar-block">
        <!-- Ваш HTML код здесь -->
    </div>
    <?php
}
?>

При переходе по внутренним ссылкам вашего сайта значение HTTP_REFERER (и document.referrer) меняется с внешнего сайта (kwork.ru) на адрес вашей внутренней страницы, с которой был совершен клик.

Поэтому можно попробовать вот так (НЕ ПРОВЕРЯЛ, НУЖНО ТЕСТИРОВАТЬ)


<!-- Ваш HTML блок с уникальным идентификатором -->
<div id="hide-for-kwork" class="my-sidebar-block">
    <!-- Ваш HTML код здесь -->
</div>

<!-- Скрипт для скрытия с запоминанием состояния -->
<script>
document.addEventListener("DOMContentLoaded", function() {
    var block = document.getElementById('hide-for-kwork');
    if (!block) return;

    // 1. Проверяем, запоминали ли мы уже, что пользователь с kwork.ru в этой вкладке
    if (sessionStorage.getItem('hide_kwork_block') === 'true') {
        block.style.display = 'none';
        return;
    }

    // 2. Если нет, проверяем реферер текущей страницы (работает только на странице входа)
    if (document.referrer.indexOf('kwork.ru') !== -1) {
        // Запоминаем состояние для всей сессии вкладки
        sessionStorage.setItem('hide_kwork_block', 'true');
        block.style.display = 'none';
    }
});
</script>
guest
Другие сообщения форума
Закрыть меню