¿Alguna vez se ha preguntado si podría utilizar shortcodes anidados en WordPress? Por defecto, WordPress no permite utilizar un shortcode dentro de otro shortcode (o en otras palabras, shortcode anidado). Sin embargo, con un simple ajuste en tu archivo functions.php, puedes hacerlo posible.
Instrucciones:
Todo lo que tienes que hacer es añadir este código al archivo functions.php de tu tema o en un plugin específico del sitio:
De esta forma podrás utilizar el siguiente shortcode anidado [link][my_text][/link].
En el fragmento, simplemente pasamos $content a do_shortcode() y funciona a las mil maravillas.
add_shortcode("my_text", "my_text"); function my_text() { return 'nested shortcode'; } function my_link($atts, $content = null) { extract(shortcode_atts(array( "href" => 'http://' ), $atts)); return '<a href="'.$href.'">'.do_shortcode($content).'</a>'; } add_shortcode("link", "my_link");
Nota: Si es la primera vez que añade fragmentos de código en WordPress, consulte nuestra guía sobre cómo copiar / pegar correctamente fragmentos de código en WordPress, para no romper accidentalmente su sitio.
Si te ha gustado este fragmento de código, por favor considere revisar nuestros otros artículos en el sitio como: 62 mejores temas gratuitos para blogs de WordPress o 7 mejores plugins para formularios de contacto de WordPress.
Hi Debjit Saha ,
Nice work.
if I want to use $content in both shortcode .All return value will be $content . how to do it .
Thanks for this tip but if i may ask, what use can this nested shortcode be put to? I mean in what ways and how can it be used?