
📝 Как добавить собственный код на сайт WordPress
Сайт на WordPress работает, но хочется чуть больше: убрать дату из определённого блока, поменять шрифт у заголовков, добавить микроразметку, которой нет в теме. Знакомо? Каждый владелец WP-сайта рано или поздно упирается в ограничения темы и плагинов. Дальше, пять безопасных способов добавить свой код: от установки плагина за минуту до написания собственного мини-плагина.
В сети полно готовых сниппетов PHP и CSS под любую задачу. Проблема не в том, чтобы найти код, проблема в том, куда его вставить, чтобы не убить сайт при ближайшем обновлении темы. Мы собрали все работающие методы в одном месте: с конкретными местами запуска, предупреждениями и примерами.
💡 Быстрый обзор:
- Установите WPCode или Code Snippets, самый безопасный способ для начинающих: код не теряется при смене темы, каждый сниппет можно включить или отключить отдельно.
- Если правите CSS, начните с Customizer (Appearance → Customize → Additional CSS), это встроено в WordPress и не требует плагинов.
- Для правок functions.php и шаблонов, создайте дочернюю тему: это сохранит ваши изменения при обновлении родительской темы.
- Когда сниппетов набирается много или они меняют логику сайта глобально, оформите их в собственный плагин.
Способ 1: Плагины для вставки сниппетов

Самый безопасный способ для новичка, специальный плагин-менеджер сниппетов. Вы вставляете PHP, CSS или JavaScript в админке через обычное текстовое поле, а плагин исполняет код там, где нужно. При ошибке в коде такой плагин ловит фатальную ошибку и отключает сниппет автоматически, сайт не падает, вы не теряете доступ к админке.
Два основных кандидата в 2026 году:
WPCode (бывший Insert Headers and Footers), самый популярный, 2+ миллиона активных установок и рейтинг 4,9 на WordPress.org. Бесплатная версия умеет вставлять код в header, footer, перед и после контента. Pro-тариф добавляет условную логику (показывать сниппет только на определённых страницах), генератор сниппетов по описанию и библиотеку готовых рецептов.
Code Snippets, 700 000+ установок, рейтинг 4,8. Полностью бесплатный, с графическим редактором и подсветкой синтаксиса. Сниппеты хранятся в базе данных и не зависят от темы. Можно экспортировать набор сниппетов в JSON и перенести на другой сайт.
Оба плагина работают по одному принципу: вы создаёте новый сниппет, выбираете тип кода (PHP / CSS / JS), вставляете код и нажимаете «Активировать». Если сниппет вызывает фатальную ошибку, WordPress автоматически деактивирует его при следующем запросе, белый экран смерти вам не грозит.
Перед вставкой любого кода сделайте полный бэкап. На практике бесплатная версия WPCode закрывает большинство типовых задач: дополнительные пиксели аналитики, микроразметка, скрытие элементов через CSS.
Способ 2: Встроенный CSS-редактор WordPress

Проверьте, что тема не переопределяет ваши стили: откройте сайт в режиме инкогнито после добавления CSS.
Если задача, чисто косметическая (цвет кнопки, отступ у виджета, размер шрифта в подвале), плагин не нужен. WordPress с версии 4.7 включает встроенный редактор Additional CSS прямо в Customizer:
- Appearance → Customize → Additional CSS.
- Вставьте CSS-правило в левую панель.
- Справа, живой превью: вы видите изменения до публикации.
Этот метод хорош тем, что CSS хранится в базе данных вместе с настройками темы, обновление темы его не стирает. Минус, редактор базовый, без подсветки синтаксиса и проверки ошибок. Для десятка строчек CSS, идеально, для сотни, берите плагин вроде Simple Custom CSS and JS (200 000+ установок), который даёт редактор с подсветкой и позволяет подключить CSS внешним файлом для лучшего кеширования.
Важный нюанс: CSS каскадируется сверху вниз, правило, написанное позже, переопределяет более раннее. Поэтому CSS из Additional Customs или плагина всегда бьёт стили темы. Если ваше правило не применилось, добавьте !important или уточните селектор до более специфичного.
Способ 3: Дочерняя тема для правок PHP и шаблонов

Дочерняя тема наследует всё от родительской, но позволяет перезаписать любой файл шаблона или функцию. Это классический способ вносить изменения в логику сайта без страха потерять их при обновлении.
Когда нужна дочерняя тема:
- Меняете разметку страниц (header.php, single.php, footer.php).
- Добавляете код в functions.php родительской темы, напрямую этого делать нельзя, потому что обновление затрет файл.
- Переопределяете WooCommerce-шаблоны под свой магазин.
Создание, 5 минут:
Создайте папку в /wp-content/themes/, например twentytwentyfive-child. Внутри, два файла:
1 /* 2 Theme Name: Twenty Twenty-Five Child 3 Template: twentytwentyfive 4 */ 5 @import url("../twentytwentyfive/style.css");
Файл functions.php:
1 <?php 2 add_action('wp_enqueue_scripts', function () { 3 wp_enqueue_style( 4 'child-style', 5 get_stylesheet_directory_uri() . '/style.css', 6 ['parent-style'], 7 wp_get_theme()->get('Version') 8 ); 9 });
Заархивируйте папку в ZIP, загрузите через Appearance → Themes → Add New и активируйте. Подробнее, в нашем руководстве по дочерним темам WordPress.
Единственный минус дочерней темы, нужно изучить структуру родительской, чтобы не сломать зависимости. Если вы правите только CSS и добавляете пару PHP-хуков, плагина сниппетов из способа 1 достаточно, дочерняя тема не нужна.
Способ 4: Собственный плагин для постоянного кода
Если сниппетов накопилось больше десятка и часть из них критична для работы сайта (кастомные типы записей, переопределение эндпоинтов REST API, своя таксономия), оформите их в собственный плагин. Он не отключится при смене темы и не потеряется при обновлении.
Минимальный плагин, один PHP-файл:
Создайте папку my-site-core в /wp-content/plugins/. Внутри, my-site-core.php:
1 <?php 2 /** 3 * Plugin Name: My Site Core 4 * Description: Пользовательский код сайта: CPT, хуки, шорткоды 5 * Version: 1.0.0 6 * Requires at least: 6.0 7 * Requires PHP: 8.0 8 */
Весь кастомный PHP пишите ниже этого заголовка. Плагин появится в списке Plugins, его можно активировать и деактивировать как обычный.
Для кода, который должен работать всегда (например, регистрация кастомного типа записей, критичного для контента), используйте must-use плагины. Создайте папку /wp-content/mu-plugins/ и положите туда PHP-файл. MU-плагины исполняются автоматически и не имеют переключателя в админке, их нельзя случайно отключить.
Обратите внимание: если просто сложить PHP-файлы в mu-plugins без загрузчика, WordPress не подхватит их из подпапок. Либо кладите файл в корень mu-plugins, либо добавьте загрузчик, однострочный PHP-файл, который подключает файлы из подпапок через require_once.
Способ 5: Показ кода в записи, без исполнения

Отдельная задача, не добавить код на сайт, а показать его читателям в статье. WordPress по умолчанию исполняет HTML и PHP, вставленный в визуальный редактор, что может сломать вёрстку записи. Решение зависит от того, какой редактор вы используете:
Gutenberg (блочный редактор): используйте блок Code или Custom HTML. Блок Code показывает код моноширинным шрифтом в рамке, не исполняя его. Для выделения синтаксиса PHP и CSS подключите плагин Syntax-highlighting Code Block, он раскрашивает код внутри блока Code по языку.
Classic Editor: в визуальной вкладке вставка кода как обычного текста работает для показа (но не даёт моноширинного форматирования). В HTML-вкладке код интерпретируется как настоящий, WordPress исполнит теги и сломает страницу. Чтобы этого избежать, замените активные символы на HTML-сущности:
Символ | Замена |
|---|---|
|
|
|
|
|
|
|
|
Для одиночного тега, ручная замена работает. Для блока из 20 строк, используйте онлайн-энкодер или плагин. Полный список символьных сущностей есть в справочнике WordPress.
⁉️🤔 Частые вопросы
Можно ли вставить PHP-код напрямую в запись WordPress?
Нет, WordPress не исполняет PHP внутри контента записи из соображений безопасности. Если нужно выполнить PHP на конкретной странице, используйте шорткод, зарегистрированный в
functions.phpдочерней темы или в плагине сниппетов. Альтернатива, плагины вроде Insert PHP Code Snippet, которые позволяют создать сниппет и вставить его шорткодом в любую запись.
Что безопаснее для новичка: плагин сниппетов или дочерняя тема?
Плагин WPCode или Code Snippets. Он изолирует каждый фрагмент кода: ошибка в одном сниппете не затрагивает остальные, а фатальную ошибку WordPress отлавливает и деактивирует проблемный сниппет автоматически. Дочерняя тема такого механизма не даёт, опечатка в
functions.phpкладёт весь сайт. Кроме того, плагин не привязан к теме: сменили тему, код остался.
Как протестировать код перед запуском на живом сайте?
Создайте staging-копию сайта. Большинство хостингов (SiteGround, Cloudways, Kinsta) предлагают кнопку «Create Staging» в панели управления. На локалке, разверните копию через Local или XAMPP. Протестировали на копии, перенесли на боевой сайт. Для быстрых CSS-правок достаточно открыть DevTools в Chrome (F12), найти элемент и применить стиль прямо в браузере, это временно и видно только вам.
Обязательно ли создавать дочернюю тему, если я только правлю CSS?
Нет. Начните со встроенного Additional CSS в Customizer (Appearance → Customize). Его хватает для большинства визуальных правок, он не стирается при обновлении темы и не требует ни плагина, ни дочерней темы. Дочерняя тема нужна, когда вы перезаписываете PHP-файлы шаблонов (header.php, single.php, функции темы).
Какой способ выбрать для критичного кода, который нельзя потерять?
Must-use плагин (
/wp-content/mu-plugins/). Код в MU-плагинах исполняется всегда, его невозможно отключить из админки, и он переживает смену темы и обновление обычных плагинов. Подходит для регистрации кастомных типов записей (CPT), таксономий и критичных переопределений REST API. Не подходит для косметических правок, для них достаточно Additional CSS или плагина сниппетов.
Что выбрать под вашу задачу
Если нужно один раз поправить цвет кнопки, откройте Appearance → Customize → Additional CSS, вставьте правило и забудьте. Если набираете коллекцию полезных PHP-сниппетов для сайта, поставьте WPCode: он бесплатный, безопасный и не зависит от темы. Если правите шаблоны страниц или подключаете свои скрипты через wp_enqueue_scripts, создайте дочернюю тему. А когда сниппетов становится больше десятка и половина из них критичны для работы сайта, оформите их в собственный плагин.
Начните с малого: откройте Customizer и добавьте первое CSS-правило прямо сейчас. Напишите в комментариях, какой метод используете вы и какой сниппет оказался самым полезным на вашем сайте.



