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

Добро пожаловать
Приветствую. Хочу сразу предупредить. Я разработчик, а не писатель, поэтому пишу как умею и, в основном, для себя. Буду благодарен за "фидбек", можно написать в комментариях к любому посту без регистрации.
Читать дальше » 1
Алексей,
bitrix d7 получить полный путь местоположения по id/code
Пример из компонента поиска местоположения в заказе.
Читать дальше » 0
Алексей,
Не работает сайт на iphone
При загрузке пишет "Проблема с #URL#" или "A problem repeatdly occured on #URL#" и загрузку останавливает.
Читать дальше » 0
Алексей,
Как скрыть неактивные инфоблоки в админке
На большом сайте количество инфоблоков быстро растёт, многие из них служебные и не предназначены для редактирования из админки. Вот что бы они не мешались их нужно убрать из меню. Простая деактивация инфоблока не поможет, он всё равно будет выводиться, нужно кастомить меню.
Читать дальше » 2
Алексей,
position: sticky; фиксация за низ блока
Чаще это свойство используют для "шапок" сайта, но если вы укажете position: sticky; top: 0; блоку, который больше высоты экрана, то часть его контента не будет доступна, пока вы не доскроллите до конца родительского блока.
Читать дальше » 0
Алексей,
CSS, JS inline в Битрикс
Добиваю Google Pagespeed, до идеального результата осталось несколько пунктов. На данный момент пришлось "заинлайнить" стили и js для того, чтобы не было лишних запросов к серверу.
Читать дальше » 3
Алексей,
Удалить пользователей которые никогда не авторизовывались
Если через форму регистрации наспамило много новых пользователей, то таблицу хорошо бы почистить. Неактивных можно удалить через админку. А вот тех что никогда не авторизовывались, только скриптом.
Читать дальше » 0
Алексей,
Ленивая загрузка виджетов Retail Rocket
Их виджеты с рекомендованными товарами блокируют страницу на 7 секунд. Google PageSpeed это очень не нравится. Да и зачем отрисовывать товары сразу, если они, обычно, находятся внизу страницы.
Читать дальше » 0
Алексей,
Как найти, откуда устанавливаются мета-теги
Мета-теги страницы обычно устанавливаются через метод SetPageProperty. Использовать его можно сколько угодно раз и в любом месте сайта. Поэтому найти откуда же в итоге установились теги, бывает, крайне сложно.
Читать дальше » 0
Алексей,
Загрузка и инициализация API Яндекс карт при скролле
API карт весит много, js код тяжёлый. Загружать сразу - плохая идея. Если карта появляется по клику, в попапе или она находится внизу страницы (т.е. не видна на первом экране), то и загрузку можно отложить до момента, когда карта станет "видна".
Читать дальше » 0
Алексей,
Bitrix framework 3
На конференции немного рассказали о планах и концепции будущего фреймворка.
Читать дальше » 0
Алексей,
You have new mail in /var/spool/mail/bitrix
Периодически в консоли появляется данное сообщение, о том что есть новые письма для пользователя bitrix.
Читать дальше » 0
Алексей,
Сохранение файла в свойство заказа типа FILE
Тут как обычно, берется массив описывающий файл, сохраняется в БД и в свойство передаётся его ID или массив ID`шников, если свойство множественное.
Читать дальше » 0
Алексей,
Массив PARAMS в меню
Ненавижу меню в битрикс, но что есть, с тем надо работать. Для того что бы сделать пункты меню разными, можно использовать массив PARAMS.
Читать дальше » 0
Алексей,
Bitrix d7 фильтр по дате
Выбираем заказы в определённом статусе за последний месяц. Пример кода.
Читать дальше » 0
Алексей,
Как переделать пагинацию на ЧПУ
Например с /?PAGEN_1=3 на /page-3/. Казалось бы добавил правило в urlrewrite, поменял компонент system.pagenavigation и готово, но нет.
Читать дальше » 0
Алексей,
Как узнать что включен режим правки?
В коде. Есть метод $APPLICATION->GetShowIncludeAreas(), возвращает true если режим правки включен.
Читать дальше » 0
Алексей,
Ошибка: Работа с сокетами (check_socket): Fail Connection to ssl
Если у вас настроено битрикс окружение и сертификат LetEncrypt, то при проверке сайта может возникнуть ошибка "Работа с сокетами". Решается обновлением корневых сертификатов.
Читать дальше » 5
Алексей,
Получить список статусов заказа
Код запроса в БД для получения STATUS_ID и их название на нужном языке
Читать дальше » 0
Алексей,
Проверяем наличие товара на складе
Хоть в битрикс склады и используются только для вывода информации, многие их переделывают под реальные задачи. Например для вывода доступности в регионах (несколько складов под каждый регион). Ядро позволяет очень гибко проверить наличие на складах, покажу на примерах.
Читать дальше » 0
Алексей,
Как вывести элементы инфоблока без учета активности
Для вывода как активных, так и неактивных элементов, нужно в фильтр передать ACTIVE = ''
Читать дальше » 0
Алексей,
Микроразметка картинок с ленивой загрузкой
Возник вопрос, если путь картинке находится в data-src, то как добавить микроразметку изображения?
Читать дальше » 0
Алексей,
Быстрая минификация css для bitrix
Идея в том, что бы взять готовую php библиотеку для минификации css и рекурсивно пройтись им по всем css файлам шаблона, создавая min копии, которые битрикс подхватывает автоматически.
Читать дальше » 0
Алексей,
could not start session because headers have already been sent
Ошибка чаще всего возникает либо из-за лишних символов (например пробел перед <?php), либо если файл сохранен в кодировке UTF8 с BOM.
Читать дальше » 0
Алексей,
jquery получить имя файла input file
Если надо кастомный вид поля загрузки файла (почти всегда), то само поле можно скрыть и работать с ним с помощью js
Читать дальше » 0
Алексей,
Загрузка js по событию начала активности пользователя
Я всё мучаю загрузку яндекс карт. Уж слишком они тяжелые, сразу грузить нельзя, а при открытии они загружаются очень долго.
Читать дальше » 2
Алексей,
Не отображается iframe, хотя заголовок x-frame-options отсутствует.
Столкнулся с тем, что при любом значении заголовка x-frame-options, iframe не отображается на других сайтах. Удаление заголовка так же не помогло.
Читать дальше » 0
Алексей,
Intersection Observer API, плавное появление элементов
Экспериментальный скрипт добавления анимации появления элементов при сколле. Использовать только для опытов)
Читать дальше » 1
Алексей,
htaccess редирект с пробелом и кириллицей в URL
При таком URL может возникнуть проблема, что правило не будет обрабатываться, т.к. в браузере адрес в одном виде, а сервер его понимает иначе. Решение простое: URL нужно взять в кавычки, а кириллицу писать как есть без URL-кодирования.
Читать дальше » 0
Алексей,
Рейтинг в виде звёзд, по-быстрому
Берем svg иконки звезд, далее в зависимости от рейтинга, проверяем на php какая иконка нужна (закрашенная или пустая) и выводим её
Читать дальше » 0
Алексей,
Здесь можно узнать много полезного. Я пишу на темы: веб-разработка, CMS 1С-Битрикс (как с позиции разработчика, так и от лица пользователя), различные нестандартные приемы в верстке и прочие вещи связанные так или иначе с web`ом. Я не блогер и пишу как умею, посты постоянно обновляются, т.к. я стараюсь следить за актуальностью данных.