В WordPress у меня есть строка, которую я не могу контролировать содержимым (сгенерированным пользователем). Например, скажем, у вас есть это:
$string = 'before <p class="test-class" style="font-family: "Brush Script Mt";">text</p> after';
и затем нужно использовать wp_kses, но часть стиля полностью удаляется:
$a = wp_kses( $string, array(
'p' => array(
'class' => array(),
'style' => array()
)
) );
var_dump( $a ); // returns 'before <p class="test-class">text</p> after'
Если вы удалите части "
, то wp_kses будет работать как положено:
$string = 'before <p class="test-class" style="font-family: Brush Script Mt;">text</p> after';
теперь выводится
$b = wp_kses( $string, array(
'p' => array(
'class' => array(),
'style' => array()
)
) );
var_dump( $b ); // returns 'before <p class="test-class" style="font-family: Brush Script Mt">text</p> after'
Я не могу изменить исходное семейство шрифтов, и оно всегда будет заключено в кавычки вокруг имени семейства шрифтов ("), и мне также нужно использовать wp_kses в строке.
Есть ли способ заставить wp_kses принимать font-family с помощью "?