Задать вопрос
  • Как узнать направление прокрутки при срабатывании события?

    @Vefolio
    Максим, Чтобы узнать направление прокрутки при срабатывании события прокрутки, можно использовать Observer в сочетании с некоторыми свойствами элемента.

    Создайте экземпляр класса IntersectionObserver, передав в него функцию обратного вызова (callback), которая будет вызываться при изменении состояния наблюдаемого элемента.
    javascript

    const observer = new IntersectionObserver(callback);

    Определите элемент, который вы хотите наблюдать, используя querySelector или любой другой способ.
    javascript

    const target = document.querySelector('#my-element');

    Зарегистрируйте элемент для наблюдения с помощью метода observe:
    javascript

    observer.observe(target);
    В функции обратного вызова (callback) можно использовать свойства IntersectionObserverEntry, чтобы определить направление прокрутки.
    javascript
    function callback(entries) {
      entries.forEach(entry => {
        if (entry.isIntersecting) {
          // Проверяем, находится ли элемент в зоне видимости
          if (entry.boundingClientRect.top < entry.rootBounds.top) {
            // Элемент прокручивается вверх
          } else {
            // Элемент прокручивается вниз
          }
        }
      });
    }

    Не забудьте отменить наблюдение, когда элемент перестанет быть нужным, вызвав метод unobserve:
    javascript

    observer.unobserve(target);
    Таким образом, используя IntersectionObserver и некоторые свойства элемента, вы можете определить направление прокрутки при срабатывании события.
  • Как заблокировать доступ к сайту по IP?

    @Vefolio
    akelsey, в Nginx
    Откройте конфигурационный файл сервера Nginx. Обычно он находится в директории /etc/nginx/ и называется nginx.conf или default.conf.

    Добавьте следующий блок кода в секцию "server":

    location / {
        # Блокировка IP-адреса
        if ($remote_addr = 123.456.789.000) {
            return 403;
        }
        # Другие директивы для обработки запросов
        # ...
    }


    Замените 123.456.789.000 на IP-адрес, который вы хотите заблокировать.

    Сохраните изменения в конфигурационном файле Nginx.
    Теперь посетители с заблокированным IP-адресом не смогут получить доступ к вашему сайту. Обратите внимание, что при блокировке IP-адресов с помощью Nginx, можно блокировать как отдельные IP-адреса, так и целые диапазоны IP-адресов.
  • Как вывести список категорий с изображением в woocommerce?

    @Vefolio
    Спасибо, все работает, но немного доработал, убрал категорию заглушку и там где ссылка нехватало кавычки.
    $woo_categories = get_categories($prod_cat_args);
    foreach ($woo_categories as $woo_cat) {
        $woo_cat_id = $woo_cat->term_id; //category ID
        $woo_cat_name = $woo_cat->name; //category name
        $woo_cat_slug = $woo_cat->slug; //category slug
       
        if ($woo_cat_name !== "Misc") {
            echo '<div class="main-cat-item">';
            $category_thumbnail_id = get_woocommerce_term_meta($woo_cat_id, 'thumbnail_id', true);
            $thumbnail_image_url = wp_get_attachment_url($category_thumbnail_id);
            echo '<img src="' . $thumbnail_image_url . '"/>';
            echo '<h2>';
            echo '<a href="' . get_term_link($woo_cat_id, 'product_cat') . '">' . $woo_cat_name . '</a>';
            echo '</h2>';
            echo "</div>\n";
        }
    }
  • Какой SFTP/SSH плагин скачать для VScode?

    @Vefolio
    Если под поиском Вы имеете в виду настройку дериктории для просмотра файлов с сервера, то "remotePath": "/название_папки/", а если поиск файлов на сервере по названию, то да, такого нет. Как правило если нужно найти файл или часть кода, я скачиваю всю папку, а там уже родной поиск vs code хорошо справляется.