Записки веб-разработчика

Слетели стили после обновления 0
Недавно обнаружил баг, при объединении css файлов, если в них используется @import, ядро битрикс неверно обрабатывает строку, из-за чего сам импорт не срабатывает.
Читать дальше »
Алексей,
Загрузка jq плагинов по необходимости (lazyload) 0
Небольшой пример, как убрать из загрузки fancybox если на странице он не используется.
Читать дальше »
Алексей,
Правила эффективного использования кеша для статических объектов 0
Решение проблемы "Задайте правила эффективного использования кеша для статических объектов" на сервере с битрикс окружением.
Читать дальше »
Алексей,
Конвертация картинок в webp на битриксе Конвертация картинок в webp на битриксе 0
Картинки в формате WebP "весят" значительно меньше, а сам формат уже поддерживается многими браузерами. К тому использовать его достаточно просто.
Читать дальше »
Алексей,
Покупка в 1 клик, минимальный код 0
Частая задача для интернет-магазина на 1С-Битрикс. В примере показаны все этапы минимально необходимые для оформления заказа.
Читать дальше »
Алексей,
Канонический адрес для страниц с неизвестными параметрами 0
Готовый код. Устанавливает канонический адрес если есть хоть какие-нибудь GET параметры.
Читать дальше »
Алексей,
Нативный lazyload в браузере Google Chrome 1
Достаточно добавить параметр loading="lazy" картинкам и все будет работать, проверял на этом блоге.
Читать дальше »
Алексей,
Как сделать 304 заголовок на 1С-Битрикс Как сделать 304 заголовок на 1С-Битрикс 0
Варианта 3: простой, с помощью готового модуля или через композит.

Читать дальше »
Алексей,
NVMe творит чудеса NVMe творит чудеса 0
Перенес блог на отдельную площадку c NVMe диском ради эксперимента. Google Page Speed почти 100 баллов показывает.
Читать дальше »
Алексей,
Срабатывает редирект на порт 443 0
Если при локальном редиректе в адресе сайта появляется 443 порт, то возможно причина в настройках httpd. Нужно добавить протокол https:// в параметр ServerName
Читать дальше »
Алексей,
Показ всего текста во время загрузки веб-шрифтов из google fonts 4
С недавних пор ресурс fonts.googleapis.com стал поддерживать свойство "font-display". С помощью него можно пройти еще одну рекомендацию Google PageSpeed
Читать дальше »
Алексей,
Как спарсить сайт, PhantomJS Как спарсить сайт, PhantomJS 0
Нужно загрузить большое количество страниц с чужого сайта, но при этом обычными серверными запросами (curl и т.п.) сделать это не удаётся? На помощь приходит PhantomJS, браузер из консоли с управлением на JS.
Читать дальше »
Алексей,
Как побороть спам на 1С-Битрикс? 4
Процесс спама уже настолько эволюционировал, что и e-mail адреса у спамеров реальные и каптча стандартная для них не проблема. Остается только ловить по ключевым словам.
Читать дальше »
Алексей,
Как поменять свойство товара в корзине Как поменять свойство товара в корзине 0
Немного "плохого" кода для выбора параметра товара в корзине. Например когда Вы не хотите использовать торговые предложения, но Вам нужно знать какой именно товар нужен покупателю (например какого цвета или размера)
Читать дальше »
Алексей,
Создание рекламы в Yandex Direct через API Битрикс 0
В Битриксе есть занимательная штука - автоконтекст. Это когда рекламное объявление показывается в зависимости от наличия товара. Но создавать вручную объявление на каждый товар занятие так себе. Поэтому написал скриптик, который делает это за меня.
Читать дальше »
Алексей,
Битрикс 18.0 0
Читать дальше »
Алексей,
Получаем состав набора 0
Получение состава комплекта или набора через апи битрикс
Читать дальше »
Алексей,
Минификация html, убираем пробелы и переносы Минификация html, убираем пробелы и переносы 4
Простой способ пройти еще одну проверку от Google Pagespeed, разгрузить посетителей и место на хостинге (если используете композит)
Читать дальше »
Алексей,
Считаем профит покупателей 0
Для персонализированный рассылки понадобилось узнать кто из покупателей давно не делал заказ, а кто делает регулярно. Написал небольшой скрипт, который можно запустить на любом сайте под управлением 1С-Битрикс (редакция с модулем Интернет-магазин)
Читать дальше »
Алексей,
Как я проходил квест по подключению облачной кассы к интернет-магазину Как я проходил квест по подключению облачной кассы к интернет-магазину 1
Практически на каждом этапе подключения у меня возникал резонный вопрос: "Как это сделает технически неподкованный человек". А никак :) Поэтому и существуют платные услуги по интеграции облачных касс, по покупке/настройке онлайн-касс, выпуску КЭП и т.д., где все сделают за вас.
Читать дальше »
Алексей,
Уведомление о недостатке свободного места на хостинге 0
Повесим на крон проверку с уведомлением, что б не пропустить момент.
Читать дальше »
Алексей,
Смс-оповещения о заказе через собственный смартфон Смс-оповещения о заказе через собственный смартфон 0
Зачем платить сервису по рассылке смс, если почти в каждом тарифе мобильной связи включены пакеты смс, которые практически не используются? Подумал я и запилил себе модуль, который рассылает оповещение о новом заказе, о оплате и передачи заказа в доставку через смартфон.
Читать дальше »
Алексей,
Рекурсивный поиск подстроки в php файлах через консоль 0
В битриксе много файлов, очень много файлов, иногда можно потратить десятки минут на поиск нужного кода. Если есть доступ к консоли, можно ускорить поиск простенькой командой.
Читать дальше »
Алексей,
Автоматическое выполнение js в браузере при посещении сайта 0
Есть сайты, которыми мы часто пользуемся, например по работе, но на них не хватает какого-либо интерфейсного функционала, или данные выводятся не очень читаемо. Есть идея, мы ж программисты, можем сами запилить нужный функционал на чужом сайте.
Читать дальше »
Алексей,
Backurl на js 0
Сохраняем данные фильтра, сортировки, номер страницы - при переходе на детальную страницу и возвращаем пользователя обратно ничего не растеряв.
Читать дальше »
Алексей,
Битрикс24 Сайты Битрикс24 Сайты 2
10 октября на конференции Битрикс24.Идея представили новый функционал - готовые шаблоны сайтов для Б24. Немного информации о новинке.
Читать дальше »
Алексей,
inputmask криво работает на телефоне 0
Например на маске даты рождения (99.99.9999), при вводе с телефона каретка при переходе через точку прыгает на шаг назад и сбивает ввод. Решение простое. Необходимо указать у input`а type="tel".
Читать дальше »
Алексей,
Как защитить оригинальные изображения, если у Вас битрикс 0
Даже если нет прямой ссылки и налету добавляется водяной знак часто можно скачать оригинал изображения. Для примера сайт мебели Mr. Doors
Читать дальше »
Алексей,
Ключевые слова в поиске битрикс маркетплейса 0
Пригодится тем, кто разрабатывает модули для маркетплейса. За 2 года я собрал почти 30 тысяч запросов и узнал как часто они были в поисковой выдаче и сколько результатов находятся по каждому их них. Все аккуратненько сложил в xls таблицу с возможность сортировки и фильтра.
Читать дальше »
Алексей,
Как добавить отчество в компонент регистрации system.auth.registration 0
Стандартно это сделать невозможно, т.к. компонент системный и его параметрами мы управлять не можем. Так что будем "костылить".
Читать дальше »
Алексей,