
Тема WordPress: что проверить до установки и как её поставить
Прежде чем нажать «Установить», стоит проверить пять вещей: от версии PHP до способа кастомизации. Разбираем, что нужно иметь под рукой и как поставить тему без сюрпризов.

Прежде чем нажать «Установить», стоит проверить пять вещей: от версии PHP до способа кастомизации. Разбираем, что нужно иметь под рукой и как поставить тему без сюрпризов.

Прежде чем распаковывать архив с WordPress, нужно проверить пять вещей: версию PHP, доступ к базе, FTP или файловый менеджер, домен и SSL. Разбираем, что подготовить, чтобы установка заняла двадцать минут, а не выходные.

Разбираем установку WordPress через панель хостинга и вручную по FTP: что подготовить заранее, какие пять ошибок ломают процесс и как понять, что всё встало правильно.

Шрифты — вторая по весу категория ресурсов после картинок и главный источник сдвигов макета. Разбираем, чем платит страница за font-display, preload и подмножества.

Разбор на цифрах: как заголовки Cache-Control и ETag меняют число запросов и объём трафика, где immutable экономит раунд-трипы и почему max-age без хеша в имени файла ломает выкатку.

Браузер не рисует страницу построчно сверху вниз. Между получением HTML и первым пикселем на экране лежит цепочка из пяти этапов, и любой из них может задержать отрисовку на сотни миллисекунд.

Что искать в pull request с версткой: доступность, адаптив, семантика, специфичность CSS. Конкретные формулировки замечаний вместо «поправьте, тут некрасиво».

Кастомный дропдаун, модалка и таблица с сортировкой чаще всего проваливают доступность. Разбираем, какие замечания писать на ревью и как переписать компонент, чтобы он работал с клавиатуры и скринридером.

Комбобокс на 10 000 опций перестаёт объявляться скринридером, live-region спамит уведомлениями, фокус улетает в никуда. Разбираем, где доступность рвётся под нагрузкой данными и частыми обновлениями DOM.

Скринридер объявляет ваш кастомный dropdown как «группа, пусто» вместо списка опций. Разбираем, как браузер строит дерево доступности и почему div с onClick для него не существует.

Мемоизация в React не бесплатна: обёртки съедают память и время сравнения пропсов. Разбираем, когда useMemo, useCallback и memo реально ускоряют рендер, а когда только замедляют.

Список на 50 тысяч строк с виртуализацией дал фризы прокрутки по 300 мс на слабом ноутбуке. Разбираем, где именно теряется кадр: измерение высот, реюз DOM-узлов, реакция на быстрый скролл.