Записки веб-разработчика, 2 страница

Генерация sitemap для картинок инфоблока
Пример скрипта отрабатывающего на кроне. Простенький скрипт, который достаёт данные о детальной картинке и доп. картинках из свойства типа файл. Сохраняет все это в xml файл, ссылка на который сохраняется в "индексный" xml.
Читать дальше » 1
Битрикс24 отключение отображения страниц в боковом слайдере
После недавнего обновления все ссылки/страницы стали отображаться во всплывающем окне/слайдере и стандартным способом это не изменить.
Читать дальше » 2
Скрыть факт использования CMS 1C-Bitrix
Последнее время было несколько случаев взлома 1С-Битрикс, прячемся)
Читать дальше » 1
Переключаем bitrixvm на php-fpm
Простой способ переключиться на php-fpm на стандартном битрикс окружении
Читать дальше » 6
Модуль переключения веток git из админки
Бесплатный модуль для битрикс, позволяющий переключать ветку git прямо из админки. Для установки не через маркетплейс (если лицензия неактивна) можно воспользоваться скриптом.
Читать дальше » 3
Обновляемся до php 8
С сегодняшнего дня битрикс требует php 8 для установки дальнейших обновлений. Самое время обновить все.
Читать дальше » 6
b_user_session как почистить
При включении хранения сессий в БД, таблица быстро разрастается, если механизм очистки отключен в настройках php.
Читать дальше » 0
Bitrix framework 3.0
Запись вебинара о прототите нового фреймворка
Читать дальше » 0
Прервать выполнение ajax запроса
Например при переключении вкладок, часть контента подгружается ajax`ом. И если быстро тыкать по вкладкам, это создаст множество асинхронных запросов и, помимо долгой загрузки, результат может быть неожиданный.
Читать дальше » 0
Вывод размера файлов объединённых js/css
При оптимизации "больших" сайтов удобно смотреть что можно "выкинуть" в объединённых файлах стилей и скриптов. В конце выводится список подключённых файлов. Добавил туда вывод размера этих файлов.
Читать дальше » 0
Google pagespeed обновился
Теперь проверяет сайт по огромному количеству показателей: доступность для людей с ограниченными возможностями, древность библиотек, проверяет ошибки в консоли и многое другое.
Читать дальше » 0
Отладка обработчиков событий битрикс
Столкнулся с проблемой: долгая генерация страницы сервером при небольшом количестве запросов. Проблема была в php коде, который срабатывал по событию.
Читать дальше » 0
Редирект с несуществующих страниц пагинации
Пример как быстро сделать редирект со страниц вида /?PAGEN_1=999 на последнюю страницу пагинации.
Читать дальше » 1
Поле для личной подписи, автографа
Сделано на canvas, работает как на десктопе, так и на "тач" устройствах. Итоговое изображение можно сохранить в jpg файл.
Читать дальше » 0
Проверить отправлен ли запрос 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
Сдвиг страницы из-за flex order
Попался интересный случай. На сайте шапку переместили ближе к футеру, чтоб контент страницы был выше в исходниках. А после, в css поменяли порядок блоков свойством order.
Читать дальше » 0
Восстановление привязки товаров к разделам
Необычная ситуация попалась, привязка к основному разделу у товара заполнена, а множественная к разделам - нет.
Читать дальше » 0
Оптимизация запросов файлов
Если использовать стандартные компоненты и примеры кода, то запросы будут идти в цикле, что не оптимально. Покажу как сделать все одним запросом.
Читать дальше » 0
Наследование пользовательских свойств в подразделах
Чтобы не заполнять все поля у каждого раздела, часть можно "наследовать", сделав пару доп. запросов в компоненте.
Читать дальше » 0
Выполнение php из консоли возвращает исходники
Связано это с параметром php short_open_tag, но почему из браузера скрипт выполняется как обычно?
Читать дальше » 0
Создание pdf документа из компонента битрикс
Пример почти готового кода создания pdf документа с помощью библиотеки dompdf
Читать дальше » 0
Как загрузить изменения в ветку, не переключаясь на неё
Из любой ветки можно загрузить новые коммиты из удалённого репозитория в другую ветку.
Читать дальше » 0
Улучшенный вариант ленивой загрузки js плагинов
Исключает повторную загрузку, загружает плагин только при отображении нужного элемента на экране, срабатывает после аякс запросов.
Читать дальше » 0
Передача параметров из cron в php скрипт
Когда скрипт очень большой, его нужно выполнять за несколько шагов. Это можно сделать с помощью передачи параметров при запуске скрипта из командной строки (или в планировщике cron).
Читать дальше » 0
Регулярка, изменить мл на литры
Пример готовой функции для замены "150мл" на "0.15л", например, в названиях товаров.
Читать дальше » 0
Микроразметка раздела товаров
Вывод данных по schema.org/Product, без доп. запросов.
Читать дальше » 0
base64 decode\encode online
Раньше висела форма конвертации в правом блоке, решил что там ей не место и закинул в статью.
Читать дальше » 0
Здесь можно узнать много полезного. Я пишу на темы: веб-разработка, CMS 1С-Битрикс (как с позиции разработчика, так и от лица пользователя), различные нестандартные приемы в верстке и прочие вещи связанные так или иначе с web`ом. Я не блогер и пишу как умею, посты постоянно обновляются, т.к. я стараюсь следить за актуальностью данных.