Рубрика: Код

Здесь я делюсь техническим опытом веб-разработчика: от кастомизации тем WordPress до тонкой настройки CSS и JavaScript. Пошаговые инструкции, проверенные решения и честные отчёты о том, как превратить шаблонный сайт в уникальный продукт. Без воды, только рабочий код.

  • Бесплатная тема WordPress, которая выглядит как премиум: мой опыт

    Бесплатная тема WordPress, которая выглядит как премиум: мой опыт

    Исходные данные: что было «из коробки»

    Когда я начал вести этот блог, у меня не было ни времени, ни желания разрабатывать тему с нуля. WordPress Twenty Twenty-Five — блочная тема по умолчанию — казалась идеальным кандидатом: чистый код, поддержка Full Site Editing, минималистичный дизайн.

    Но «минималистичный» не всегда значит «готовый к использованию». Вот что я получил из коробки:


    📋 Что работало сразу

    • Адаптивность — тема отлично выглядела на мобильных
    • Блочный редактор — Gutenberg работал без конфликтов
    • Базовая типографика — шрифты и размеры были читабельными
    • SEO-структура — правильная иерархия заголовков и семантика

    ❌ Чего не хватало

    • Навигация по рубрикам — в шапке не было меню категорий
    • SEO-описание — мета-теги были в <head>, но не видны посетителям
    • Удобные отступы — на страницах постов заголовок был слишком далеко от шапки
    • Кнопка «Наверх» — на длинных статьях неудобно скроллить обратно
    • Ширина контента — 645px было слишком узко для современных экранов

    🛠️ Хронология правок: от шаблона к кастому

    Все изменения я делал через WPCode — плагин, который позволяет добавлять JavaScript и CSS сниппеты без редактирования файлов темы. Это гарантия, что при обновлении WordPress или темы ничего не сломается.

    1. SEO-описание под заголовком H1

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

    Решение: JavaScript автоматически находит H1 на главной странице и вставляет после него параграф с описанием. CSS-переменные темы обеспечивают идеальное визуальное соответствие.

    Результат: текст «Я музыкант (мелодический эмбиент, поп- и рок-баллады, нью-эйдж) и веб-разработчик…» теперь виден сразу. Ключевые навыки выделены <strong> для быстрого сканирования.


    2. Меню рубрик в шапке

    В стандартной теме Twenty Twenty-Five навигация по рубрикам была только в футере. Но посетителям нужно быстро переходить к нужной категории — «Итоги», «Музыка», «Кино».

    Что сделал:

    • JavaScript создает блок <nav> с ссылками на рубрики
    • CSS добавляет анимацию подчеркивания при наведении
    • Активная рубрика выделяется цветом (#503AA8)
    • Адаптив для мобильных — уменьшенные отступы и шрифт

    Важный момент: меню вставляется динамически после шапки, но до основного контента. Это сохраняет семантику HTML и не ломает блочную структуру темы.


    3. Удаление дублирующей ссылки

    В блоке «Другие заметки» в конце каждого поста WordPress показывал связанные статьи. Проблема: туда попадала и сама эта статья.

    Решение: JavaScript проверяет URL каждой ссылки в блоке. Если он совпадает с текущим URL — удаляет весь родительский элемент <li>.

    const currentUrl = window.location.href.split('#')[0].split('?')[0];
    const postLinks = relatedPostsSection.querySelectorAll('.wp-block-post-title a');
    
    postLinks.forEach(function(link) {
        const linkUrl = link.href.split('#')[0].split('?')[0];
        if (linkUrl === currentUrl) {
            link.closest('.wp-block-post').remove();
        }
    });

    4. Кнопка «Наверх» (Back to Top)

    На длинных статьях (как эта) неудобно скроллить обратно к началу. Встроенной кнопки в теме не было.

    Что получилось:

    • Круглая кнопка с иконкой стрелки (SVG)
    • Появляется после 400px прокрутки
    • Плавная анимация появления/исчезновения (opacity + transform)
    • Эффект «подпрыгивания» при наведении
    • Плавный скролл наверх (behavior: ‘smooth’)

    Дизайн: светло-серебристый цвет (#d1d5db) отлично виден на белом фоне. При наведении становится темнее (#b0b5bd) с увеличенной тенью.


    5. Уменьшение отступов на страницах постов

    Это была самая сложная правка. На главной и в рубриках заголовок был на комфортном расстоянии от шапки (~30px). Но на страницах одиночных постов — ~140px!

    Проблема: inline-стили в HTML имели высокий приоритет. Простого CSS было недостаточно.

    Решение: использовал специфичные селекторы с проверкой атрибутов и !important:

    .single main.wp-block-group.has-global-padding.is-layout-constrained {
        margin-top: var(--wp--preset--spacing--40) !important;
    }
    
    .single-post .wp-block-group.alignfull[style*="padding-top:var(--wp--preset--spacing--60)"] {
        padding-top: var(--wp--preset--spacing--30) !important;
    }

    6. Расширение области контента

    Стандартная ширина контента 645px на современных экранах выглядит узкой. Изображения и код «сжаты», много пустого пространства по бокам.

    Что изменил:

    • --wp--style--global--content-size: 780px (было 645px)
    • --wp--style--global--wide-size: 1440px (было 1340px)
    • Адаптив для мобильных — комфортные отступы 20px вместо стандартных

    Результат: контент шире на ~20%, улучшенная читаемость на десктопе, на мобильных текст не прилипает к краям.


    Итоговая статистика

    За ~2 часа работы (с перерывами на кофе и тестирование) я внес следующие изменения:

    • JavaScript сниппетов: 4
    • CSS правил: ~150 строк
    • Измененных элементов: 6 основных блоков
    • Время разработки: ~2 часа

    💡 Выводы: почему Twenty Twenty-Five — отличный фундамент

    После всех правок я могу с уверенностью сказать: стандартная тема WordPress — это не «костыль», а профессиональный инструмент, который требует минимальной доводки под конкретные задачи.

    Что понравилось:

    • Блочный редактор — мощный, но для тонкой настройки нужен JavaScript
    • CSS-переменные — позволяют легко кастомизировать без хардкода
    • Чистый код — нет лишних стилей и скриптов, которые конфликтуют
    • Адаптивность — из коробки работает на всех устройствах

    Что требует доработки:

    • Навигация — нужно добавлять меню рубрик вручную
    • Отступы — на некоторых страницах слишком большие
    • UX-элементы — кнопка «Наверх», улучшенная типографика списков
    • SEO-видимость — мета-теги есть, но их нужно дублировать визуально

    Главный вывод: 2 часа работы превращают шаблонную тему в уникальный продукт. При этом вы получаете все преимущества стандартной темы — обновления, безопасность, совместимость с плагинами.


    Что дальше?

    Блог продолжает развиваться. В планах:

    • Добавить темную тему (уже есть CSS-переменные, осталось написать JavaScript)
    • Улучшить поиск по сайту (сейчас стандартный WordPress)
    • Добавить email-рассылку для новых постов
    • Оптимизировать скорость загрузки (сейчас 100/100 в PageSpeed, но можно лучше)

    Если вы думаете о том, чтобы использовать Twenty Twenty-Five для своего блога — однозначно рекомендую. Это не «костыль для новичков», а профессиональная тема, которая требует минимальной доводки. А результат выглядит как кастомная разработка за сотни тысяч рублей.

    Остались вопросы по кастомизации? Пишите в комментариях — с радостью поделюсь опытом!