[![Что такое functions.php и как его использовать в WordPress? 1](https://coma.lv/wp-content/uploads/2025/10/Gemini_Generated_Image_h3ws4ih3ws4ih3ws.webp)](https://coma.lv/wp-content/uploads/2025/10/Gemini_Generated_Image_h3ws4ih3ws4ih3ws.webp)

# Что такое functions.php и как его использовать в WordPress?

Oct 20, 2025/by [Alina](https://coma.lv/ru/author/alina-suhorukova-gmail-com/)

functions.php или функционный файл темы – это важный файл, используемый темами WordPress. Он работает подобно небольшому плагину и автоматически загружается как в панели администратора, так и на внешних страницах сайта. Обычно его используют для добавления функций, классов, действий и фильтров, которые применяются в рамках темы. Через этот файл можно расширять функциональность темы и вносить изменения в поведение WordPress.

## Где находится functions.php и как его использовать

Файл functions.php расположен в папке вашей темы:

wp-content/themes/имя_темы/functions.php

В нём вы можете использовать встроенные функции WordPress, добавлять собственные PHP-функции и подключаться к действиям и фильтрам ядра. Хотя каждая установленная тема имеет свой собственный файл functions.php, работает только тот, который принадлежит активной теме. Если в вашей теме по какой-либо причине нет этого файла, вы можете просто создать текстовый файл с именем *functions.php* и поместить его в директорию темы.

Дочерние темы также могут иметь свои файлы functions.php. Они используются для того, чтобы дополнять или переопределять функциональность родительской темы. Это позволяет аккуратно добавлять изменения, не вмешиваясь в исходный код основной темы.

## Что можно делать через functions.php (с примерами)

Файл functions.php позволяет расширять функциональность темы и подключать собственные функции, хуки и фильтры. Ниже приведены основные задачи и примеры их реализации.

Включение поддержки миниатюр (thumbnails):

add_theme_support( 'post-thumbnails' );

Добавление новых форматов записей:

add_theme_support( 'post-formats', array( 'aside', 'gallery', 'quote' ) );

Создание навигационных меню:

register_nav_menus( array( 'main_menu' => 'Главное меню', 'footer_menu' => 'Меню в футере', ) );

Подключение собственных скриптов и стилей:

function my_theme_scripts() { wp_enqueue_style( 'main-style', get_stylesheet_uri() ); wp_enqueue_script( 'custom-js', get_template_directory_uri() . '/js/custom.js', array('jquery'), null, true ); } add_action( 'wp_enqueue_scripts', 'my_theme_scripts' );

Автоматическое добавление текста в конец каждой записи:

function add_custom_text($content) { if (is_single()) { $content .= '<p>Спасибо за чтение! Подпишитесь на обновления.</p>'; } return $content; } add_filter('the_content', 'add_custom_text');

Создание собственного виджета:

class Welcome_Widget extends WP_Widget { function __construct() { parent::__construct('welcome_widget', 'Приветственный виджет'); } function widget($args, $instance) { echo $args['before_widget'] . '<p>Добро пожаловать на наш сайт!</p>' . $args['after_widget']; } } add_action('widgets_init', function() { register_widget('Welcome_Widget'); });

Регистрация пользовательского типа записи (Custom Post Type):

function create_portfolio_post_type() { register_post_type('portfolio', array( 'labels' => array('name' => 'Портфолио'), 'public' => true, 'has_archive' => true, 'supports' => array('title', 'editor', 'thumbnail') ) ); } add_action('init', 'create_portfolio_post_type');

## Что лучше помещать в functions.php, а что — в плагин

Functions.php идеален для:

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

Плагин лучше использовать, если:

- функционал должен работать независимо от темы (например, SEO, кеширование, интеграции с соцсетями, контактные формы),
- вы хотите сохранить функционал при смене темы,
- функция сложная или общая для нескольких сайтов (лучше вынести в плагин для повторного использования).

## Советы по работе с functions.php

- Используйте дочернюю тему для внесения изменений, чтобы обновления основной темы не стерли ваши функции.
- Минимизируйте количество кода в functions.php — если функционал большой или универсальный, лучше сделать плагин.
- Всегда тестируйте добавленные функции на локальном или тестовом сайте, чтобы не сломать сайт на продакшене.
- Используйте хуки (actions и filters), чтобы не изменять ядро WordPress и тем самым сохранить совместимость с будущими обновлениями.

## Вывод

Файл functions.php остаётся ключевым инструментом для добавления PHP-функций и расширения функционала темы. Он позволяет гибко настраивать сайт, подключать стили и скрипты, добавлять виджеты, шорткоды и пользовательские типы записей.

*Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [vadim@coma.lv](mailto:vadim@coma.lv), [+371 29394520](tel:+37129394520)*

---
