'; }, $content ); // [code]...[/code] $rendered = str_replace( ['[code]', '[/code]'], ['
', '
'], (string) $rendered ); // [link=url target=_blank]text[/link] / [link=url]text[/link] $rendered = preg_replace( '/\[link=(https?:\/\/[^\s\[\]]+) target=_blank\]([^\[]*)\[\/link\]/i', '$2', (string) $rendered ); $rendered = preg_replace( '/\[link=(https?:\/\/[^\s\[\]]+)\]([^\[]*)\[\/link\]/i', '$2', (string) $rendered ); $allowed = wp_kses_allowed_html('post'); if (!isset($allowed['img'])) { $allowed['img'] = []; } $allowed['img'] = array_merge($allowed['img'], [ 'class' => true, 'src' => true, 'alt' => true, 'title' => true, 'width' => true, 'height' => true, 'data-src' => true, 'decoding' => true, 'data-src' => true, ]); $allowed['pre'] = array_merge($allowed['pre'] ?? [], ['class' => true]); $allowed['code'] = $allowed['code'] ?? []; return wp_kses((string) $rendered, $allowed); } endif;