Начало статьи смотрите по ссылке Используем шорткоды при разработке собственной темы. Часть 1
Шаг 2. Добавляем шорткод в базу данных
Теперь, когда мы создали функцию, нам необходимо зарегистрировать ее в базе данных вместе с шорткодом, который будет для нее использоваться. Сделать это можно с помощью register_shortcode, предоставленным WordPress.
add_shortcode('projects','project_shortcode');
Первый параметр является именем шорткода, который мы будем использовать в теме, а второй — имя функции (которую мы определили выше) относительно этого шорткода. Вот так WordPress и узнает, что нужно делать, когда «найдет» этот шорткод в файлах темы.
Шаг 3. Используем зарегистрированный шорткод в теме
В WordPress есть метод парсинга шорткода, который редко использую разработчики. do_shortcode может быть использован для вставки шорткода непосредственно в файл темы.
Синтаксис шорткода похож на тот, когда вы вставляете шорткод в редакторе записей. В этом случае мы передаем атрибуты для ограничения вывода количества записей, и порядка их сортировки. Так как мы выводим похожие записи наших «проектов», мы создадим новый шаблон страницы и в нем используем шорткод. Создаем файл шаблона с именем ‘page-project.php’ и вставляем в него следующее:
<?php /* Template Name: Project Page */ ?> <?php get_header(); ?> <div id="container"> <div id="content" role="main"> <?php echo do_shortcode('[projects limit=10 orderby=rand]'); ?> </div><!-- #content --> </div><!-- #container --> <?php get_sidebar(); ?> <?php get_footer(); ?>
Теперь, чтобы просмотреть шаблон, который мы только что сделали,создайте страницу под названием ‘Project’. И конечно создайте несколько демо-записей для “Project”!
Вуаля. Шорткод успешно выводит пользовательские записи.
Заключение
Как вы видите, вышеописанный способ создания шорткодов для пользовательских записей и использование их в свое теме помогают делать файлы темы чистыми и настраиваемыми.
Пример выше показывает, как можно использовать шорткоды в процессе разработки наиболее эффективно. Есть много новых и продуктивных способов использования шорткодов в файлах темы — не стесняйтесь делиться своими идеями в комментариях.