Изменение размера шрифта внутри шорткода

14 мар. 2014 г., 19:48:08
Просмотры: 15.3K
Голосов: 2

У меня есть простой шорткод, вот такой...

function myshortcode( $attributes, $content = null ) {
    extract( shortcode_atts( array(
        'class' => ''
    ), $attributes ) );
           return 'Это контент : ' . $content . ';
}
add_shortcode('my_shortcode', 'myshortcode');

Он отлично работает, и если я использую следующее в записи...

[my_shortcode]Это контент, который я хочу отобразить[/my_shortcode]

Но теперь я хочу варьировать размер шрифта для части контента, например...

[my_shortcode]Это [25px]контент[/25px], который я хочу отобразить[/my_shortcode]

Я хочу, чтобы слово 'контент' отображалось с размером шрифта 25px.

Кто-нибудь знает способ, возможно через str_replace?

0
Все ответы на вопрос 2
0

Пытаетесь вставить шорткод внутри шорткода? Возможно, это более простое решение для управления выводом на фронтенде?

CSS

span.my_pixel_size{font-size:25px;}

PHP

'<p>Это содержимое: <span class="my_pixel_size">' . $content . '</span></p>';
14 мар. 2014 г. 20:42:55
0

Насколько я понимаю шорткоды, вам нужно было бы создавать отдельный шорткод для каждого размера шрифта. Гораздо проще определить один шорткод, а затем использовать атрибуты для задания размера шрифта.

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' );

Затем вы можете использовать что-то вроде:

Это [font size="18px"]содержимое[/font], которое я хочу отобразить

Конечно, это можно расширить, добавив параметры font-family, classes и id.

14 янв. 2015 г. 22:20:03