No sé si te he entendido bien, ¿quieres usar el shortcode caption en el sidebar.php?
Si es así fuera del editor debes usar do_shortcode
Un saludo
Con do_shortcode ya podría hacerlo así
Código imagen en el editor:
[caption id="attachment_2315" align="aligncenter" width="175"]<a class="thickbox" href="xxxxxxxx/egipto-cat-138.jpg"><img class="wp-image-2315 size-thumbnail" src="xxxxxx/egipto-cat-138-175x220.jpg" alt="Texto alternativo" width="175" height="220" /></a> Leyenda[/caption]
Usando do_shortcode:
<?php
$imagen1 = '<a class="thickbox" href="xxxxxx/egipto-cat-138.jpg"><img class="wp-image-2315 size-thumbnail" src="xxxxxx/egipto-cat-138-175x220.jpg" alt="Texto alternativo" width="175" height="220" /></a> Leyenda';
echo do_shortcode( '[caption id="attachment_2315" align="aligncenter" width="175"]' . $imagen1 . '[/caption]' ); ?>
El problema es que así aún me llevaría más tiempo de lo que me cuesta ahora. Lo ideal sería copiar y pegar el código del editor tal cual.
-
Esta respuesta fue modificada hace 6 años, 5 meses por almendron.
Lo que necesitaría, por tanto, sería habilitar de forma global el uso de shortcodes en el sidebar., es decir, algo como add_filter('widget_text','do_shortcode');
pero que sirva para el sidebar en su conjunto y no solo para el widget.
El shortcode puede funcionar tal como está sin necesidad de usar la variable $imagen1.
<?php echo do_shortcode('[caption id="attachment_2315" align="aligncenter" width="175"]<a class="thickbox" href="xxxxxxxx/egipto-cat-138.jpg"><img class="wp-image-2315 size-thumbnail" src="xxxxxx/egipto-cat-138-175x220.jpg" alt="Texto alternativo" width="175" height="220" /></a> Leyenda[/caption]'); ?>
Otras opciones pasan por poner directamente el código HTML que genera el shortcode o hacer un widget y poner el shortcode dentro.
No se me ocurre otra cosa…
Un saludo
Pues mira, igual así me sirve. Sería tan solo poner <?php echo do_shortcode('
+ código del editor + '); ?>
Podría preparar la plantilla con el inicio y el final, y luego sería solo pegar el mismo código del editor.
Lo pruebo y te digo algo.
Gracias.
Por fin he tenido un poco de tiempo para comprobar 🙂
Al final me he quedado con el método que usaba. Me da lo mismo hacer una plantilla con <?php echo do_shortcode(' + código del editor + '); ?>
que como lo hago ahora. Además, tengo algo más flexibilidad a la hora de aplicar estilos.
Otra cosa es que se pudiera hacer que se ejecutar el shortcode va para el sidebar en su conjunto, pero como es así… lo dejo tal cual lo tengo.
Gracias.