Как вывести HTML-теги в do_shortcode?

10 мая 2015 г., 00:27:44
Просмотры: 29.6K
Голосов: 5

Я хочу вывести HTML-теги в функции do_shortcode();

<?php echo do_shortcode($content); ?>

Это возможно? Спасибо!

1
Комментарии

Привет. Разве этот код <?php echo '<html/>'; ?> не делает именно это?

Ismail Ismail
10 мая 2015 г. 01:17:52
Все ответы на вопрос 2
0
18

Да, это возможно.

На данный момент я могу предложить два способа.

Первый — следуйте рекомендациям кодекса Шорткоды. По сути, вы просто оборачиваете HTML в ob_start(); это вернет HTML в виде строки, которую можно вывести.

function my_shortcode() {
    ob_start();
    ?> <HTML> <here> ... <?php
    return ob_get_clean();
}

Второй способ — добавить ваш HTML в виде строки в переменную, а затем вернуть её. Например:

function my_shortcode() {
    $output = '';
    $output.= '<html>content</html>';
    return $output;
}
10 мая 2015 г. 02:42:06
0
-1

Моё решение, которое отлично работает для меня:


function my_function(){
    ob_start();
    echo 'Длинный HTML-тег здесь';
    $output = ob_get_contents();
    ob_end_clean(); 
    return  $output;
}
6 июн. 2019 г. 22:57:16