У WordPress есть привычка автоматически форматировать код, что иногда является большой проблемой для некоторых блоггеров. Вы можете использовать плагин Syntax Highlighter или переделывать весь код вручную, однако эти способы имеют свои недостатки. Недавно, работая над сайтом клиента, мы открыли для себя полезный инструмент, который отключит автоматическое форматирование в записях WordPress с помощью использования шорткодов.
Для осуществления задуманного нужно добавить код в файл functions.php вашей темы или в плагин для сайта WordPress:
function my_formatter($content) { $new_content = ''; $pattern_full = '{(\[raw\].*?\[/raw\])}is'; $pattern_contents = '{\[raw\](.*?)\[/raw\]}is'; $pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE); foreach ($pieces as $piece) { if (preg_match($pattern_contents, $piece, $matches)) { $new_content .= $matches[1]; } else { $new_content .= wptexturize(wpautop($piece)); } } return $new_content; } remove_filter('the_content', 'wpautop'); remove_filter('the_content', 'wptexturize'); add_filter('the_content', 'my_formatter', 99);
После того, как вы проделали это и загрузили измененный файл на сервер, можно использовать шорткоды. Просто используем шорткод ниже при написании поста:
[raw ]Неформатированный код[/raw ]
Задавайте свои вопросы в комментариях.