Custom shortcode. Всегда сверху страницы
Вопрос не в ручной вставке шорткода, а через редактор.
//functions.php
require_once __DIR__ . '/shortcodes/custom_button_connect.php';
//file
function button_connect(){
return get_template_part( 'template-parts/soc-btn' );
}
add_shortcode('button_connect', 'button_connect');
В редакторе вставляется [button_connect]. Где бы он не был вставлен, код появляется вверху страницы, а нужно именно там, где в редакторе.
Ответы (1 шт):
Автор решения: KAGG Design
→ Ссылка
Callback функция вашего шорткода (button_connect) должна возвращать строку. А она возвращает void|false, который преобразуется в пустую строку. Зато она выводит на экран ваш шаблон. Выводит не там, где надо.
Так правильно:
function button_connect() {
ob_start();
get_template_part( 'template-parts/soc-btn' );
return ob_get_clean();
}
Код выше стартует буфер вывода, перехватывает весь вывод из шаблона в буфер, а потом возвращает содержимое буфера как результат работы функции.