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

Добро пожаловать
Приветствую. Хочу сразу предупредить. Я разработчик, а не писатель, поэтому пишу как умею и, в основном, для себя. Буду благодарен за "фидбек", можно написать в комментариях к любому посту без регистрации.
Читать дальше » 3
Pagespeed, показатель CLS, отладка и исправление
CLS - показатель сдвига блоков страницы во время загрузки сайта. Для отладки, открываем консоль (f12), вкладка "Perfomance" и жмём "Record and Reload".
Читать дальше » 0
Свои условия вывода платёжной системы
Пример привязки платёжной системы к партнёрам, реализующим товары на сайте.
Читать дальше » 0
Ошибка mysql Duplicate entry '4294967295'
Ошибка вызвана тем, что значение auto_increment таблицы свойств достигло максимального значения. Лечится изменением типа поля с int на bigint
Читать дальше » 1
Уязвимость в модуле Сайты 24 landing
Модуль либо обновить, либо, если обновления недоступны или вы не перешли на php8, то удалить. Поправили в версии 23.850.0
Читать дальше » 1
Смена кодировки сайта с windows-1251 на utf-8
Пошаговая инструкция для конвертации сайта в utf-8 на 1С-Битрикс
Читать дальше » 0
Генерация sitemap для картинок инфоблока
Пример скрипта отрабатывающего на кроне. Простенький скрипт, который достаёт данные о детальной картинке и доп. картинках из свойства типа файл. Сохраняет все это в xml файл, ссылка на который сохраняется в "индексный" xml.
Читать дальше » 1
Битрикс24 отключение отображения страниц в боковом слайдере
После недавнего обновления все ссылки/страницы стали отображаться во всплывающем окне/слайдере и стандартным способом это не изменить.
Читать дальше » 2
Блокировка ai ботов по user agent
Ботов стало очень много. Их совместное посещение сайта создаёт немалую нагрузку. Блокируем?
Читать дальше » 0
ajax запрос в метод компонента
Чтоб не создавать лишних скриптов, битрикс позволяет делать запросы прямо в нужный метод класса компонента.
Читать дальше » 0
Получение пользователей из определённой группы
Одним методом битрикс, по символьному коду группы, с возможностью кеширования.
Читать дальше » 0
Купон на повторную покупку в sms
На событии изменения статуса заказа, генерируем купон и отправляем его в смс.
Читать дальше » 0
Ленивая загрузка форм Б24 на сайте
Формы Б24 тянуть свои скрипты, которые загружают рекаптчу, которая загружает еще кучу всего (скрипты, стили, шрифты). И всё это добро загружается вместе со страницей. Надо отложить)
Читать дальше » 0
Событие перед добавлением товара в корзину
Пример обработчика события OnSaleBasketItemBeforeSaved (аналог в старом ядре - OnBeforeBasketAdd)
Читать дальше » 0
Сортировка массива по двум полям: названию и индексу
Пример кода сортировки ассоциативного массива, с помощью метода uasort и strnatcmp
Читать дальше » 0
Ошибка Ansible could not initialize the preferred locale: unsupported locale setting
Возникает после установки битрикс окружения 9-й версии. Решается коммандой: export LC_ALL=C.UTF-8
Читать дальше » 0
Транслит для ЧПУ URL
Простая форма для генерации символьного кода из текста
Читать дальше » 0
Редактирование из публичной части
Как добавить возможность редактирования (из публичной части) элемента инфоблока вне компонента?
Читать дальше » 0
Стилизация input[type="checkbox"] на css
Простенькая стилизация инпутов, используется только тег label и псевдоэлементы :beforе и :after
Читать дальше » 0
Нормализация номера телефона в битриксе
Для хранение телефонов в едином виде, можно обработать их одним методом UserPhoneAuthTable::normalizePhoneNumber()
Читать дальше » 0
Автоматический расчет цены комплекта в Битрикс
Готовый скрипт для расчета цены комплекта по его составу, работает на cron.
Читать дальше » 4
Какие скидки были применены к товарам в заказе
Нужен всего один метод OrderEdit::getOrderedDiscounts, его нет в документации, т.к. используется только в админке битрикс.
Читать дальше » 0
Не удаляется старый кеш
Если в папке с кешем битрикс у вас много "просроченного" кеша с ~ (тильдой) в названии, проверьте выполняется ли агент delayedDelete
Читать дальше » 0
Анимация печати текста на js
Простой скриптик для имитации набора текста в строке
Читать дальше » 0
Пропали цены в каталоге после обновления ядра
Связано с обновлением 23.300.0, в котором параметр COMPATIBLE_MODE стал по-умолчанию считаться выключенным. Нужно пройтись по настройкам компонентов catalog.* и включить режим совместимости
Читать дальше » 6
Не работает авторизация в админку
Может быть несколько причин: не удалили mbstring.func_overload, некорректно настроено хранение сессий, задублировалась кука PHPSESSID, настроена политика безопасности группы администраторов.
Читать дальше » 2
Проверить отправлен ли запрос ajax`ом
Одной строкой: Application::getInstance()->getContext()->getRequest()->isAjaxRequest()
Читать дальше » 0
Удалить модуль если админка не работает
Если вдруг какой модуль выдал ошибку и нет возможности зайти в админку, модуль можно удалить выполнив небольшой скрипт.
Читать дальше » 0
Пример aspect-ratio, улучшаем показатель CLS
Пример, помогающий понять как работает aspect-ratio в css
Читать дальше » 0
bitrix ERR_SSL_PROTOCOL_ERROR
Если после обновления окружения отвалился ssl, проверьте файл /etc/nginx/bx/conf/ssl_options.conf, у меня там не хватало строки ssl on;
Читать дальше » 0
Здесь можно узнать много полезного. Я пишу на темы: веб-разработка, CMS 1С-Битрикс (как с позиции разработчика, так и от лица пользователя), различные нестандартные приемы в верстке и прочие вещи связанные так или иначе с web`ом. Я не блогер и пишу как умею, посты постоянно обновляются, т.к. я стараюсь следить за актуальностью данных.