Как заменить фразу в контенте кроме подписей внутри картинок?

Есть сайт на wordpress и необходимость по всему сайту найти фразу текста и обрамить его в тег span c классом.

Делаю вот так:

function replace_content($content)
{
$content = str_replace('Company Name', '<span class="company">Company Name</span>',$content);
return $content;
}
add_filter('the_content','replace_content');

и всё бы хорошо, если бы не картинки c подписью alt, которые надо обойти стороной, чтобы не сломалась вёрстка. Как это можно сделать?

Дошёл до такого варианта, но он ещё не работает..

add_filter( 'the_content', 'frost_the_content' );
function frost_the_content( $content ) {
$pattern = '~^(?!alt=".*Company Name.*"$)(Company Name)$~';
    return preg_replace($pattern, '<span class="nobr">Company Name</span>', $content);
    }

Ответы (0 шт):