Разработка · 7 мин чтения

Правки HTML CSS JS на сайте: что можно поправить без переделки

Ко мне обычно приходят не с идеей нового сайта, а с конкретной болью: кнопка съезжает на мобильном, форма не отправляет заявку в CRM, виджет СДЭК считает доставку неправильно. В девяти случаях из десяти правки html css js закрывают такую задачу за несколько часов работы, без переноса на новый движок и без остановки продаж на время разработки. Дальше - что реально чинится точечно, а что упирается в переделку, вне зависимости от того, что обещает исполнитель на бирже.

Что можно поправить без переделки сайта

Точечная правка - это изменение, которое не трогает архитектуру страницы: структуру блоков, движок, систему сборки. Правлю стили конкретного элемента, добавляю разметку под новый блок, вставляю скрипт с ограниченной задачей - и сайт продолжает работать так же, как работал, только с исправленным куском.

Типичные заявки, которые закрываются за один заход:

  • меню съезжает или перекрывает контент на экранах уже 375px
  • форма отправляет заявку, но не долетает до CRM или почты
  • виджет доставки СДЭК показывает неверную стоимость после смены индекса
  • кнопка оплаты через эквайринг T‑Bank не проставляет статус заказа в WooCommerce
  • всплывающее окно на Tilda прячется под шапкой из-за конфликта z‑index

Общий признак таких задач - проблема локализована в одном блоке верстки или в одном скрипте, и чтобы её решить, не нужно трогать остальную страницу.

Точечные правки CSS: верстка, адаптив, брендинг без редизайна

Большая часть CSS-заявок - это адаптив на брейкпоинтах ниже 768px: элементы наезжают друг на друга, текст обрезается, кнопка уезжает за край экрана. Правится это добавлением медиа-запроса под конкретный блок, без переписывания остальной верстки.

Отдельная головная боль - конструкторы вроде Tilda, где собственные стили блоков идут с высокой специфичностью и иногда с !important. Чтобы перебить их, приходится либо повышать специфичность селектора, либо точечно подключать стиль через атрибут data-block-id конкретного блока, а не общий класс.

Пример: всплывающее окно на Tilda пряталось под фиксированной шапкой из-за одинакового z‑index у обоих элементов.

.t-popup[data-tooltip-html] {
  z-index: 9999 !important;
}

.t228__wrapper.tooltip_active {
  z-index: 9998;
}

Правка на 15 строк, время работы - 20-40 минут, стоимость такой задачи у меня начинается от 3 000 ₽. Для сравнения, на бирже фриланса за похожую правку часто просят фиксированную сумму независимо от сложности, а на деле разброс цен у разных исполнителей может быть от 1 000 до 15 000 ₽ за одну и ту же строчку кода - тут важно смотреть не на цену, а на то, сколько реально займёт диагностика конфликта стилей.

Доработки HTML: новые блоки без пересборки страницы

HTML-правки чаще всего связаны с добавлением структуры, которой не было в шаблоне: новое поле в форме, микроразметка schema.org для рейтинга товара, обёртка вокруг виджета, чтобы к ней можно было привязать скрипт.

На Tilda это обычно делается через HTML-блок (T123 или Zero Block) - вставляю разметку прямо в тело блока, не трогая остальные секции страницы. Важный нюанс: при повторной публикации сайта в редакторе Tilda правки внутри стандартных блоков (не HTML-блоков) могут слететь, если верстальщик потом редактирует тот же блок через визуальный конструктор. Поэтому все ручные доработки я стараюсь выносить в отдельные HTML-блоки, которые редактор не трогает.

На WordPress и WooCommerce разметка правится через дочернюю тему или хуки (add_action, woocommerce_after_single_product_summary и подобные), а не напрямую в файлах плагина - иначе любое обновление плагина стирает правки. Это база, но именно её игнорируют исполнители, которые правят core-файлы плагина напрямую, а потом удивляются, почему сайт откатился после апдейта.

Правки JS: скрипты под конкретную задачу

Самые ценные JS-доработки - это не украшательства, а интеграции: форма на сайте должна докидывать лид в CRM, оплата должна проставлять статус заказа, доставка - пересчитываться при смене адреса.

Из практики: связка Tilda + amoCRM через вебхук на отправку формы, отслеживание успешной оплаты через T‑Bank эквайринг с последующей отправкой события в Яндекс.Метрику, пересчёт стоимости СДЭК при вводе индекса без перезагрузки страницы, валидация телефона в чекауте WooCommerce до того, как заказ уйдёт в оплату. Отдельная категория - интеграции сайта с Telegram: форма на сайте отправляет заявку в aiogram-бота, который уже пересылает её менеджеру и пишет в таблицу, а сценарии вроде уведомлений о статусе заказа собираю через сценарии в n8n, чтобы не городить отдельный бэкенд под одну задачу.

Пример простого фикса - отправка цели в Метрику при клике на кнопку заказа, без which плагина аналитики:

document.querySelector('.js-order-btn').addEventListener('click', function () {
  if (typeof ym === 'function') {
    ym(XXXXXXX, 'reachGoal', 'order_click');
  }
});

Такие правки собраны на практике в готовые заготовки под Tilda и WordPress - часть из них лежит в библиотеке готовых скриптов, откуда можно взять рабочий кусок и адаптировать под свою верстку, не оплачивая разработку с нуля.

Тип правки Что меняется Срок Стоимость
CSS блок стилей отступы, цвета, адаптив несколько часов от 3 000 ₽
HTML-блок / разметка новый блок, микроразметка 1-2 дня от 3 000 ₽
Простой JS-скрипт валидация, счётчик, событие аналитики 1 день от 3 000 ₽
Комплексная интеграция CRM, эквайринг, СДЭК, вебхуки от недели от 40 000 ₽

Бесплатный материал

🎁 Полезный скрипт в подарок

Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.

Без спама. Отписка в 1 клик.

Tilda, WordPress/WooCommerce и кастомные сайты - где правки различаются

На Tilda ограничение простое: правишь либо стили и код внутри конструктора, либо добавляешь свой JS через настройки сайта. Плюс - быстро и недорого. Минус - при неаккуратной работе с блоками правки слетают после республикации, а часть логики (например, сложную синхронизацию с CRM) в конструкторе тесно, приходится выносить во внешний скрипт, подключаемый через код для вставки в head или footer.

На WordPress и WooCommerce правки живут дольше, если сделаны через дочернюю тему и хуки, а не прямым редактированием файлов плагина или темы. Здесь же чаще всего встречается конфликт версий: обновили один плагин - сломался чужой JS, который на него завязан. Проверка совместимости перед обновлением занимает минут 20, но экономит день на восстановление сайта после того, как что-то отвалилось.

На кастомных сайтах (SPA на React, лендинги на Next.js, сервисы с отдельным бэкендом на Laravel) точечная правка означает правку исходников с последующим редеплоем - то есть даже маленький CSS-фикс проходит через сборку и выкладку, а не правится «на живую» через панель админки. Это дольше по процессу, но предсказуемее по результату: правка либо прошла тесты и собралась, либо билд упал и это видно сразу, а не постфактум на проде.

Когда правки не спасают и нужна переделка

Точечный фикс перестаёт работать, когда проблема не в одном блоке, а в самой основе. Несколько признаков, по которым я обычно понимаю, что чинить дальше - тратить деньги клиента впустую:

  • скрипты на странице копились годами без единой системы, и правка одного ломает три других - типичная ситуация со старым jQuery-кодом без какой-либо структуры
  • страница весит 6-8 МБ и грузится дольше 5 секунд из-за наслоившихся плагинов и виджетов, которые никто не чистил
  • конверсия с мобильных стабильно ниже десктопной вдвое - это почти всегда не CSS-баг, а изначально нерабочая структура блоков под мобильный экран
  • на WordPress каждое обновление ядра или плагина что-то ломает, потому что правки годами вносились прямо в core-файлы

В таких случаях дешевле и быстрее по времени собрать блок или страницу заново, чем гоняться за симптомами. Ориентир по рыночным ценам на разработку с нуля у студий и фрилансеров - величина плавающая и сильно зависит от портфолио исполнителя, поэтому сравнивать стоит не только по чеку, но и по срокам сдачи. У меня сайт на Tilda с нуля стоит от 30 000 ₽, сайт на WordPress - от 60 000 ₽, интернет-магазин под ключ - от 80 000 ₽, лендинг на Next.js - от 80 000 ₽.

Чтобы сайт работал без сбоев

Техподдержка

от 15 000 ₽/мес

Подробнее →

Частые вопросы

Сколько стоит точечная правка на сайте?

Простая правка CSS, HTML или JS без интеграции с внешними сервисами у меня стоит от 3 000 ₽ - сюда попадают фиксы верстки, добавление блока разметки, небольшой скрипт вроде события аналитики. Комплексная интеграция с CRM, эквайрингом или службой доставки вроде СДЭК идёт отдельно, от 40 000 ₽, потому что требует настройки на стороне обоих сервисов и тестирования сценариев.

Можно ли внести правки в HTML/CSS/JS без доступа к исходному коду?

На Tilda и большинстве конструкторов - да, через встроенный редактор кода блока или настройки сайта, без доступа к серверу. На WordPress для устойчивых правок нужен минимум доступ в админку с правами редактирования темы или FTP/SSH для дочерней темы. На кастомных SPA и сервисах без доступа к репозиторию и окружению сборки правку внести физически негде - она будет жить только до следующего деплоя разработчика, который эти доступы имеет.

Правки ломают дальнейшие обновления Tilda или WordPress?

Если правки вносить правильно - через отдельные HTML-блоки на Tilda и дочернюю тему с хуками на WordPress - обновления их не трогают. Ломается обычно то, что сделано в обход этой практики: правки прямо в стандартном блоке конструктора или в файлах плагина, которые перезаписываются при следующем обновлении.

Как понять, что пора не чинить, а переделывать сайт?

Если за последний месяц вы чинили один и тот же блок больше двух раз, а проблема возвращается в новом виде - это сигнал, что причина глубже конкретной строчки CSS. Второй признак - если для каждой новой правки приходится сначала разбираться, что вообще происходит на странице, потому что структура и скрипты не документированы и накапливались годами без плана.

Есть задача?

Обсудим в мессенджере

Расскажите, что нужно сделать — отвечу в течение 4 часов в рабочее время. Первая консультация бесплатно.

Самозанятый Калинкин Н. А. · работаю с физлицами и юрлицами

Продолжая пользование настоящим сайтом Вы выражаете своё согласие на обработку Ваших персональных данных (файлов куки) с использованием Yandex.Metrika.
Понятно