вложенный шорткод не работает
Короткий код:
[permalink][title][/permalink]
Вывод:
<a href="foobar">[title]</a>
API шорткодов Wordpress говорит, что это правильно:
Http://codex.wordpress.org/Shortcode_API#Nested_Shortcodes
Есть идеи?
2
1 answers
Со страницы, на которую вы указали ссылку:
Анализатор коротких кодов корректно обрабатывает вложенные макросы коротких кодов при условии , что их функции обработчика поддерживают его рекурсивным вызовом do_shortcode():
Вам необходимо рекурсивно вызвать do_shortcode()
для любого обработчика коротких кодов, который может содержать вложенные короткие коды. Так, например:
function wpse18659_permalink( $atts, $content ){
return '<a href="' . get_permalink() . '" title="Permalink to ' . get_the_title() . '" alt="">' . do_shortcode( $content ) . '</a>';
}
add_shortcode( 'permalink', 'wpse18659_permalink' );
Это должно отлично обрабатывать вложенные короткие коды.
5
Author: John P Bloch, 2011-05-29 20:04:31