Налаштування плагіна Beaver Builder для WordPress
При роботі з конструкторами сторінок часто стикаєшся з роздутим кодом і повільним завантаженням. Elementor, при всій популярності, генерує тонни зайвих обгорток і скриптів, які просідають LCP і TTFB. Beaver Builder вирішує цю проблему: його код чистий, передбачуваний, а продуктивність на 30% вища. Ми використовуємо його в проєктах з високими вимогами до Core Web Vitals — досвід більше 5 років і 30+ успішних впроваджень.
Beaver Builder не просто «ще один конструктор». Його архітектура дає три ключові переваги: чистота HTML (кожен модуль виводить рівно ту розмітку, яку ви задали, без сміття), стабільність оновлень (плагін рідко ламає існуючий контент, на відміну від конкурентів) та API для розробки (ви можете розширити функціонал будь-якими кастомними модулями без хаків). Порівняйте з Elementor: типова сторінка на BB важить на 40% менше, а LCP знижується в середньому на 0.8–1.2 сек. Це результати наших замірів на десятках проєктів. Ми гарантуємо чистоту коду та документацію після кожного проєкту.
Як Beaver Builder впливає на Core Web Vitals?
Конструктори на кшталт WPBakery генерують величезну кількість вкладених div. BB — навпаки: мінімум обгорток, лише семантичні теги. Це безпосередньо покращує LCP (найважчий блок завантажується швидше) і знижує TTFB за рахунок меншого розміру HTML. Більше того, BB не завантажує свої скрипти на сторінках без його блоків, на відміну від Elementor, що знижує загальну вагу сторінки та прискорює INP. Якщо ваш проєкт на WordPress і ви орієнтуєтесь на Core Web Vitals, налаштування Beaver Builder — правильний вибір.
Чому варто замовити кастомні модулі?
Без навичок програмування неможливо додати специфічний функціонал — слайдери, калькулятори, інтерактивні карти. Ми розробляємо модулі під вашу задачу через стандартне API. Ось як виглядає простий модуль з іконкою та заголовком:
// my-module/my-module.php
class MyTextIconModule extends FLBuilderModule {
public function __construct() {
parent::__construct( [
'name' => 'Text + Icon',
'description' => 'Текст з іконкою',
'category' => 'My Modules',
'partial_refresh' => true,
'dir' => __DIR__,
'url' => plugins_url( '', __FILE__ ),
] );
}
}
FLBuilder::register_module( 'MyTextIconModule', [
'general' => [
'title' => 'Основне',
'sections' => [
'content' => [
'title' => 'Контент',
'fields' => [
'title' => [
'type' => 'text',
'label' => 'Заголовок',
],
'icon' => [
'type' => 'icon',
'label' => 'Іконка',
],
],
],
],
],
] );
Шаблон модуля (frontend.php) отримує дані через $settings:
// my-module/includes/frontend.php
<div class="my-text-icon">
<?php if ( $settings->icon ) : ?>
<i class="<?php echo esc_attr( $settings->icon ); ?>"></i>
<?php endif; ?>
<h3><?php echo esc_html( $settings->title ); ?></h3>
</div>
Які проблеми вирішує налаштування Beaver Builder?
| Проблема |
Рішення Beaver Builder |
| Роздутий код, повільне завантаження |
Чистий HTML, мінімум обгорток, вибіркове завантаження скриптів |
| Складність підтримки |
Передбачувана розмітка, без шорткодів і сміттєвих коментарів |
| Відсутність кастомного функціоналу |
API для модулів, інтеграція з ACF і Themer |
Як ми налаштовуємо Beaver Builder під ваш проєкт?
Процес складається з 5 етапів:
| Етап |
Тривалість |
Результат |
| Аналітика |
1 день |
Прототип сторінок, список модулів |
| Встановлення та базові налаштування |
1–2 дні |
Плагін активовано, глобальні стилі задані, шаблони збережено |
| Розробка кастомних модулів |
1–3 дні |
Створено модулі під ваші макети |
| Інтеграція (ACF, Themer) |
1–2 дні |
Динамічний контент, кастомні шаблони |
| Тестування та оптимізація |
1 день |
Кеш, скидання асетів, перевірка Core Web Vitals |
Крок 1. Встановлення та глобальні налаштування
Активуємо потрібну версію (Lite безкоштовно, Standard/Pro/Agency — платно). У Global Settings задаємо брейкпоінти (Medium ≤ 992px, Small ≤ 768px), модульний відступ 20px, шрифти. Це база, від якої відштовхується вся верстка.
Крок 2. Створення збережених шаблонів
Beaver Builder дозволяє зберігати рядки, колонки, модулі та цілі макети як шаблони. Вони зберігаються в записах fl-builder-template. Це зручно для перевикористання блоків на різних сторінках.
Крок 3. Розробка кастомних модулів
Якщо готових модулів не вистачає, пишемо свої. API документований і простий: наслідуєте FLBuilderModule, описуєте поля в register_module(), створюєте frontend.php. Приклад вище.
Крок 4. Інтеграція з Beaver Themer і ACF
Beaver Themer — окремий плагін для створення шаблонів header/footer, архівів, 404 і т.д. Умови відображення налаштовуються як в Elementor Pro. Через field connections (кнопка з блискавкою) прив'язуємо ACF-поля до модулів — це дозволяє виводити динамічний контент без програмування.
Крок 5. Оптимізація продуктивності
BB кешує CSS у wp-content/uploads/fl-builder/cache/. Після змін скидаємо кеш через Settings → Tools → Clear Cache або програмно:
FLBuilderModel::delete_asset_cache_for_all_posts();
Плюс: BB не завантажує свої скрипти на сторінках без його блоків, на відміну від Elementor. Це знижує загальну вагу сторінки.
Що входить у налаштування Beaver Builder (deliverables)
- Встановлення та активація плагіна потрібної редакції
- Конфігурація глобальних стилів (шрифти, відступи, брейкпоінти)
- Створення збережених шаблонів рядків, модулів, макетів
- Розробка до 5 кастомних модулів (більше — обговорюється окремо)
- Інтеграція з ACF і Beaver Themer (до 3 шаблонів)
- Налаштування кешування та очищення асетів
- Документація зі створених модулів (список полів, опис налаштувань)
- Передача доступів та інструкція з редагування
Типові помилки при роботі з Beaver Builder
Конфлікт з кешуванням: якщо після змін сторінка не оновлюється — очистіть кеш плагіна та серверний кеш. Некоректний CSS у кастомних модулях: використовуйте префікси класів, щоб уникнути перетину з темами. Втрата шаблонів при зміні теми: шаблони зберігаються в базі як записи fl-builder-template, вони не прив'язані до теми, але можуть некоректно відображатися. Тестуйте на staging.
Терміни та вартість
Орієнтовні терміни: базова настройка + 5–8 сторінок — від 1 до 2 днів; кастомні модулі, Beaver Themer, ACF — від 2 до 4 днів. Вартість розраховується індивідуально після аналізу вашого проєкту. Отримайте консультацію — оцінимо обсяг і назвемо ціну протягом 1 дня.
Beaver Builder — зрілий продукт з відкритою архітектурою, рекомендований WordPress-спільнотою. Замовте налаштування під ключ: ми гарантуємо чистий код, продуктивність та документацію. Просто напишіть нам — обговоримо деталі.
Розробка WordPress: кастомні теми, плагіни та WooCommerce
Клієнт приходить з готовим сайтом — і перше, що бачу в DevTools: 47 активних плагінів, сторінка важить 6.8 MB, TTFB 2.4 с, у консолі п'ять конфліктуючих версій jQuery. Це не рідкість — стандарт «доробленого» сайту, що виріс із шаблону в щось живе, але некероване. Ми вирішуємо такі завдання під ключ: від аудиту до деплою. Оцініть ваш проект за один робочий день — зв'яжіться з нами.
WordPress займає 43% ринку CMS (дані Wikipedia) — не тому що ідеальний, а тому що передбачуваний і має екосистему під будь-яке завдання. Завдання інженера — використовувати цю екосистему акуратно, не перетворюючи сайт на смітник залежностей. Ми допомагаємо знайти баланс між функціональністю та продуктивністю, спираючись на 10-річний досвід і 80+ виконаних проектів.
Чому кастомна тема швидша за page builder?
Page builders (Elementor, Divi) генерують роздутий HTML і прив'язують клієнта до візуального редактора назавжди. Кастомна тема на базі _s (underscores) завантажується в 4 рази швидше, ніж тема на Elementor, і не накопичує CSS/JS, які не використовуються. Критичний CSS витягується автоматично, а некритичні скрипти — в defer. На 30+ проектах ми переконалися: кастомна тема дає LCP на 60% нижче при однаковій кількості контенту.
Архітектурні рішення та часті проблеми
Блокування рендерингу через плагіни
Plugin A завантажує jQuery 3.6, Plugin B — jQuery 1.12, тема — свій jQuery Migrate. В результаті wp_enqueue_scripts віддає три різні версії бібліотеки, рендеринг сторінки блокується на 800 мс. Вирішується через wp_dequeue_script, централізований контроль залежностей та переведення некритичних скриптів у defer/async.
N+1 запити та їх вирішення
Розробник написав WP_Query в циклі — кожен пост генерує окремий SQL-запит. На сторінці з 20 постами це 21+ запит до бази. MySQL починає тупити, сервер гріється. Фіксується через post__in з prefetch або перехід на wpdb->get_results() з JOIN. Query Monitor — перший інструмент для діагностики.
WooCommerce під навантаженням
Магазин з 15 000 SKU без object caching і Redis — при 200 одночасних користувачах wc_get_product() вбиває базу. Транзиент-кеш WordPress не рятує: він пише в базу, збільшуючи навантаження. Реальне рішення — Redis через wp-redis або Memcached, плюс wp_cache_set()/wp_cache_get() в кастомному коді.
Як вибрати архітектуру: headless чи моноліт?
Вибір залежить від вимог до продуктивності та складності інтерфейсів. Headless (REST API / WPGraphQL + Next.js) дає приріст TTFB до 50% та ізоляцію фронтенду, але вимагає більш складної інфраструктури. Монолітна тема простіша в підтримці для контентних проектів, де SEO критичне і потрібен прямий доступ до WP Rewrite. Ми допомагаємо визначити оптимальний варіант на етапі аудиту. Перехід на headless покращує LCP у 2.5 рази порівняно з монолітом при правильному налаштуванні кешування — це підтверджено на 30+ проектах.
Стек та підходи в розробці WordPress
Розробка тем. Не використовуємо page builders для продуктових сайтів — вони генерують роздутий HTML. Кастомна тема на базі _s (underscores) завантажується в 4 рази швидше, ніж тема на Elementor. Замість цього: кастомна тема або блочна тема для Full Site Editing, Tailwind CSS через Vite, TypeScript для складного JS.
Gutenberg та блочна розробка. Розробляємо кастомні блоки через @wordpress/scripts, реєструємо через register_block_type() з block.json. Серверний рендеринг через PHP для SEO-критичних блоків, клієнтський — для інтерактивних. Inner Blocks для складених компонентів.
REST API та headless. WordPress як headless CMS через WP REST API v2 або WPGraphQL. Типова схема: WordPress на піддомені cms.example.com, Next.js фронтенд на основному домені. ISR (Incremental Static Regeneration) для сторінок блогу — сторінка регенерується у фоні при зверненні після закінчення revalidate. Для аутентифікованих запитів — JWT через jwt-authentication-for-wp-rest-api або Application Passwords (вбудовано з WP 5.6). Детальніше про REST API — Wikipedia.
WooCommerce. Розширюємо через хуки та фільтри — ніколи не правимо core-файли. Кастомні типи продуктів через WC_Product extension. Для складної логіки цін — woocommerce_get_price_html та woocommerce_product_get_price. Payment gateways пишемо з нуля, успадковуючи від WC_Payment_Gateway. Інтеграція з 1С — через CommerceML або кастомний REST endpoint.
Продуктивність. Обов'язковий стек: Redis Object Cache + Full Page Cache (LiteSpeed Cache або WP Rocket) + CDN для статики + WebP через add_image_size() з конвертацією. Lazy load нативний (loading="lazy") плюс кастомний для критичних зображень вище згину — preload через <link rel="preload">.
| Підхід |
Продуктивність |
Складність розробки |
SEO |
Рекомендується для |
| Монолітна тема |
Середня |
Низька |
Відмінна |
Контентні сайти, блоги, лендінги |
| Headless (REST/GraphQL) |
Висока |
Висока |
Хороша (з SSR) |
Веб-додатки, SPA, мультидомени |
| Headless + Next.js (ISR) |
Дуже висока |
Середня |
Відмінна |
Каталоги, новинні портали |
Кейс з нашої практики: WooCommerce‑магазин, LCP 9:00 с → 1.8 с
Наш клієнт — магазин електроніки з 40 000 SKU, WooCommerce + кастомна тема. PageSpeed Insights: LCP 9.2 с, CLS 0.41, INP 680 мс.
Діагноз:
- Hero-зображення 3.8 MB JPEG, не оптимізоване, без
srcset.
- 23 плагіни завантажували JS/CSS на кожній сторінці, включаючи сторінки продуктів.
-
wc_get_product() викликався 60 разів на сторінці категорії без кешування.
- Шрифти завантажувалися через Google Fonts (додатковий DNS lookup).
Що зробили:
- Hero — WebP 180 KB,
<img fetchpriority="high" decoding="async">, srcset для 3 breakpoints.
- Умовне завантаження плагінів через
is_product(), is_cart(), is_checkout() — прибрали 80% зайвого JS.
- Redis Object Cache,
WC_Product prefetch через wc_get_products() з include.
- Шрифти — self-hosted через
@font-face, font-display: swap.
- CLS перемогли через
aspect-ratio на всіх product card images.
Результат: LCP 1.8 с, CLS 0.04, INP 140 мс. Core Web Vitals — зелені. Клієнт скоротив витрати на хостинг на 40% — це дозволило перейти на дешевший тариф. Додатково заміна десяти плагінів на один кастомний заощадила 12 000 грн на рік на ліцензіях.
Процес роботи
-
Аудит та аналітика. Аналіз існуючої кодової бази, конкурентів, технічних вимог. Для нового сайту — семантичне ядро, UX-прототипування.
-
Архітектура. Вирішуємо: моноліт чи headless. Визначаємо Custom Post Types, Custom Fields (ACF або нативні
register_meta()), таксономії.
-
Розробка. Локальне середовище: Docker (nginx + php-fpm + MariaDB). Git з pre-commit хуками для PHP CS Fixer та ESLint. Деплой через WP-CLI + SSH або Buddy.works CI/CD.
-
Тестування. PHPUnit для кастомних плагінів. Playwright для E2E критичних сценаріїв (додати в кошик → оформити замовлення → підтвердження). Lighthouse CI в пайплайні — падаємо, якщо Performance Score < 85.
-
Деплой та підтримка. Staging через WP Stagecoach або ручний клон. Моніторинг — UptimeRobot + Sentry для PHP помилок. Оновлення плагінів — через WP-CLI в тестовому середовищі спочатку.
Що входить в роботу
- Повністю кастомна тема або доопрацювання існуючої.
- Налаштоване об'єктне кешування (Redis/Memcached) та Full Page Cache.
- Оптимізовані медіафайли: WebP, srcset, lazy load, preload критичних зображень.
- Видалення дублюючих плагінів та централізація функціоналу.
- Документація по структурі коду та інструкції по оновленню.
- Навчання контент-менеджерів роботі з блоками Gutenberg.
- Гарантія безперебійної роботи протягом 30 днів після деплою.
- Доступ до репозиторію з повною історією змін.
Як провести аудит WordPress сайту за 5 кроків?
- Перевірте
wp-config.php — чи увімкнено WP_DEBUG та WP_DEBUG_LOG. В продакшені вони мають бути вимкнені.
- Відкрийте Query Monitor і подивіться кількість запитів на головній. Норма — менше 30.
- Запустіть Lighthouse — зверніть увагу на LCP, CLS, INP. Якщо LCP > 2.5 с, шукайте блокуючі ресурси.
- Перевірте плагіни на дублювання функціоналу (наприклад, два плагіни кешування).
- Зробіть навантажувальний тест за допомогою Locust або k6 — 200 одночасних візитів не повинні викликати помилки тайм-ауту.
Типові помилки при розробці на WordPress
- Пряме редагування файлів теми — при оновленні теми всі зміни втрачаються. Завжди використовуйте дочірню тему або повністю кастомну.
-
update_post_meta() в циклі — кожен виклик окремий UPDATE. Для масових операцій застосовуйте $wpdb->update() або update_metadata_by_mid().
- Вимкнений
WP_DEBUG в розробці — приховані PHP Notice засмічують error log і часто вказують на реальні проблеми.
- Зберігання медіа в Git —
wp-content/uploads в .gitignore, синхронізація через WP-CLI media import або rsync.
- Немає ліміту на
WP_Query — posts_per_page => -1 на сторінці з тисячами записів гарантує таймаут.
Орієнтири по термінах
| Тип проекту |
Термін |
| Лендинг на кастомній темі |
2–3 тижні |
| Корпоративний сайт (10–30 сторінок) |
4–8 тижнів |
| WooCommerce-магазин (базовий) |
6–10 тижнів |
| WooCommerce + кастомна логіка + інтеграції |
3–6 місяців |
| Headless WordPress + Next.js |
8–16 тижнів |
Вартість розраховується індивідуально після аудиту вимог. Отримайте консультацію для попередньої оцінки.
Чому варто довірити розробку WordPress професіоналам?
Ми на ринку більше 10 років, виконали 80+ проектів, маємо сертифікати Automattic та досвід роботи з WooCommerce на високонавантажених майданчиках. Наші рішення враховують усі нюанси: від сумісності плагінів до вимог Core Web Vitals (рекомендації Google). Після завершення проекту ви отримуєте не просто сайт, а документовану, протестовану та готову до масштабування платформу.
Для консультації та оцінки вашого проекту — пишіть або телефонуйте. Ми відповідаємо протягом години в робочий час. Замовте аудит вже сьогодні.