wordpress shortcode Шоркоды и включение шаблонов (в т.ч. виджетов) в тело страницы, редактируемой в админке

В functions.php вашей темы просто пишем:

function my_shortcode_call( $atts ){
	include(__DIR__ . '/../../theme54000/includes/maps/shops.php');
}
add_shortcode( 'center_office_map', 'my_shortcode_call' );

так мы зарегистрировали шорт код, который делает инклуд какого-то шаблона (в данном случае это JS и блок с картой, который было бы неудобно редактировать в тексте).

Далее в тексте статьи достаточно поросто добавить сам шорткод, например в редакторе в админке это может выглядеть так:

[center_office_map]
<h2>Контактная информация</h2>
<strong>ООО "Рога и Копыта". Учередитель: О. Бендер </strong>

Возврат значений или include

В примере выше мы просто делали инклуд шаблона, в то время как в базовом виде шортокоды должны делать ruturn строки (подробнее о них:)

Поэтому оф. документация предлагает буферизировать вывод, если html-разметки много:

function my_shortcode() {
	ob_start();
	?> <HTML> <here> ... <?php
	return ob_get_clean();
}

- но если возможность, лучше все же получать данные, а ещё лучше делать инклуд и буферезировать вывод, тогда все должно точно работать нормально, т.е. так:

//[center_office_map]
function my_shortcode_call( $atts ){
    ob_start();
    include(__DIR__ . '/../../theme54000/includes/maps/center-office.php');
    return ob_get_clean();
}
add_shortcode( 'center_office_map', 'my_shortcode_call' );

Key Words for FKN + antitotal forum (CS VSU):