Как создать простой шорткод в WordPress с применением WP24

Шорткоды — это мощный инструмент WordPress, позволяющий вставлять динамический контент в страницы, записи и виджеты без сложного программирования. В этой статье мы подробно разберем, как создать собственный шорткод с префиксом wp24_, который будет удобным и безопасным для использования на вашем сайте.

Что такое шорткод WordPress и зачем он нужен

Шорткод — это специальный тег в квадратных скобках, например [example], который WordPress заменяет на определенный контент при выводе страницы. Это позволяет разработчикам и пользователям легко добавлять функционал без изменения кода темы.

Примеры использования шорткодов:

  • Вывод галереи изображений
  • Встраивание форм обратной связи
  • Показ цен и тарифов
  • Динамический контент, например, дата или пользовательские данные

Создание собственных шорткодов расширяет возможности сайта и делает его более удобным и функциональным.

Создаем простой шорткод с префиксом WP24

Для начала создадим функцию, которая будет возвращать простой текст и зарегистрируем её как шорткод. В целях предотвращения конфликтов в именах функций добавим префикс wp24_.

Добавьте следующий код в файл functions.php вашей темы или в файл собственного плагина:

function wp24_hello_shortcode() {
    return '<p>Привет от WP24! Это простой шорткод.</p>';
}
add_shortcode('wp24_hello', 'wp24_hello_shortcode');

Теперь в любом месте контента вы можете использовать шорткод [wp24_hello], и он выведет текст «Привет от WP24! Это простой шорткод.»

Разбор кода

Функция wp24_hello_shortcode возвращает HTML-строку. Функция зарегистрирована через add_shortcode с именем шорткода wp24_hello. WordPress автоматически заменит вызов шорткода на содержимое, возвращаемое функцией.

Добавляем параметры к шорткоду: динамический вывод

Шорткод может принимать параметры, которые позволяют управлять выводом. Давайте расширим предыдущий пример и добавим параметр name, чтобы персонализировать приветствие.

function wp24_hello_shortcode($atts) {
    $atts = shortcode_atts(
        array('name' => 'гость'), $atts, 'wp24_hello'
    );
    return '<p>Привет, ' . esc_html($atts['name']) . '! Добро пожаловать на WP24.</p>';
}
add_shortcode('wp24_hello', 'wp24_hello_shortcode');

Теперь шорткод можно использовать так: [wp24_hello name="Иван"], и он выведет «Привет, Иван! Добро пожаловать на WP24.»

Безопасность вывода

Обратите внимание на функцию esc_html(), которая экранирует вывод, предотвращая XSS-уязвимости в случае передачи вредоносных данных через параметры.

Пример: шорткод для вывода последних записей с кастомными параметрами

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

function wp24_latest_posts_shortcode($atts) {
    $atts = shortcode_atts(
        array(
            'count' => 5,
            'category' => ''
        ), $atts, 'wp24_latest_posts'
    );

    $args = array(
        'posts_per_page' => intval($atts['count']),
        'post_status' => 'publish'
    );

    if (!empty($atts['category'])) {
        $args['category_name'] = sanitize_text_field($atts['category']);
    }

    $query = new WP_Query($args);
    if (!$query->have_posts()) {
        return '<p>Записи не найдены.</p>';
    }

    $output = '<ul>';
    while ($query->have_posts()) {
        $query->the_post();
        $output .= '<li><a href="' . esc_url(get_permalink()) . '">' . esc_html(get_the_title()) . '</a></li>';
    }
    wp_reset_postdata();
    $output .= '</ul>';

    return $output;
}
add_shortcode('wp24_latest_posts', 'wp24_latest_posts_shortcode');

Используйте шорткод так:

  • [wp24_latest_posts count="3"] — выведет 3 последних записи;
  • [wp24_latest_posts count="5" category="novosti"] — выведет 5 последних записей из категории «novosti».

Объяснение

Мы создаем объект WP_Query с параметрами для выборки записей. В цикле формируем HTML-список с ссылками. Используем функции esc_url и esc_html для безопасного вывода.

Рекомендации по разработке шорткодов на WordPress

Используйте префиксы для функций и шорткодов

Чтобы избежать конфликтов с другими плагинами и темами, обязательно добавляйте уникальные префиксы к именам функций и шорткодов. В нашем случае мы используем wp24_, что логично для сайта wp24.ru.

Обрабатывайте и проверяйте входящие данные

Всегда используйте функции WordPress для очистки и экранирования входящих параметров шорткода: sanitize_text_field, intval, esc_html, esc_url и т.п. Это повысит безопасность и стабильность работы вашего кода.

Избегайте вывода напрямую — возвращайте строки

Функция шорткода должна возвращать HTML как строку, а не выводить его сразу. Это позволяет WordPress корректно обрабатывать и вставлять контент.

Используйте wp_reset_postdata() после кастомных запросов

Если в шорткоде используется WP_Query или другие функции для выборки записей, обязательно сбрасывайте глобальные данные поста после цикла, чтобы не нарушить работу остального контента страницы.

Полезные плагины для работы со шорткодами в WordPress

Рассмотрим несколько плагинов, которые могут упростить разработку и использование шорткодов:

  • Shortcodes Ultimate — набор готовых шорткодов с визуальным редактором.
  • WP Shortcode by MyThemeShop — удобный плагин для создания и управления шорткодами.
  • Custom Content Shortcode — позволяет создавать свои шорткоды с минимальными усилиями.

Однако для максимальной гибкости и уникальности лучше писать собственные шорткоды, как показано в этой статье.

Как создать собственный виджет WordPress с примером кода
02.12.2025
Автоматический импорт продуктов из Excel в WordPress
06.12.2025
Как удалить все комментарии в WordPress с помощью кода
10.12.2025
Оптимизация базы данных WordPress: лучшие методы и примеры
21.11.2025
Как избежать проблем с кэшированием в WordPress
13.12.2025