Cambiar el tamaño de fuente dentro de un shortcode
Tengo un shortcode simple como este...
function myshortcode( $attributes, $content = null ) {
extract( shortcode_atts( array(
'class' => ''
), $attributes ) );
return 'Este es el contenido: ' . $content . ';
}
add_shortcode('my_shortcode', 'myshortcode');
Esto funciona perfectamente y si lo uso en una publicación...
[my_shortcode]Este es el contenido que quiero mostrar[/my_shortcode]
Pero ahora lo que quiero hacer es variar el tamaño de fuente del contenido, por ejemplo...
[my_shortcode]Este es el [25px]contenido[/25px] que quiero mostrar[/my_shortcode]
Quiero que esto cambie la palabra 'contenido' a un tamaño de fuente de 25px.
¿Alguien sabe alguna forma, tal vez usando str_replace?

¿Estás intentando poner un shortcode dentro de otro shortcode? Quizás esta sea una solución más fácil para controlar la salida en el front-end.
CSS
span.my_pixel_size{font-size:25px;}
PHP
'<p>Este es el contenido: <span class="my_pixel_size">' . $content . '</span></p>';

Según mi comprensión de los shortcodes, necesitarías crear un shortcode para cada píxel. Sería mucho más fácil definir un solo shortcode y luego usar atributos para definir un tamaño de fuente.
function font_callback( $attributes, $content = null ) {
extract( shortcode_atts( array(
'size' => '12px'
), $attributes ) );
return '<span style="font-size:' . $size . '">' . $content . '</span>';
}
add_shortcode( 'font', 'font_callback' );
Entonces podrías usar algo como:
Este es el [font size="18px"]contenido[/font] que quiero mostrar
Por supuesto, esto se podría ampliar para incluir font-family
, classes
y un id
.
