Вложенные функции шорткода в functions.php файл


Я пытаюсь получить функцию шорткода (NewStuff) для отображения внутри другой функции (oldstuff), но у меня возникли проблемы. Обе функции шорткода перечислены ниже, а также то, что я пробовал. Может кто-нибудь, пожалуйста, помочь мне получить функцию "NewStuff", отображаемую внутри функции "Oldstuff"?

Спасибо!

Текущие Функции

function newStuff(){
return '
only raw html is in this function
';
}
add_shortcode('new', 'newStuff');

function oldStuff(){
return '
only raw html is in this function
';
}
add_shortcode('old', 'oldStuff');

Я попытался включить короткий код, но это не сработало

function oldStuff(){
return '
[new]
only raw html is in this function
';
}
add_shortcode('old', 'oldStuff');

Я попытался включить эту функцию, но она не сработала

function oldStuff(){
return '
echo newStuff();
only raw html is in this function
';
}
add_shortcode('old', 'oldStuff');
Author: Mr. B, 2014-12-10

1 answers

Вы должны использовать функцию do_shortcode() в обеих строках, которые вы возвращаете, она выполнит короткие коды в строке.

function oldStuff(){
    return do_shortcode('
        [new]
        only raw html is in this function
    ');
}
add_shortcode('old', 'oldStuff');
 6
Author: M-R, 2017-01-16 14:09:00