如何从标题中删除强标签和内联样式?
How do I remove strong tags & inline styling from headings?
我正试图摆脱 wordpress 标题中的内联样式和强标签。例如<h2 style="font-size: 18px"><strong>This is </strong><strong>mess</strong><strong>y</strong></h2>
我可以使用正则表达式替换来删除标签而不丢失标签之间的文本吗?
您会推荐使用 function.php 来过滤标签,还是我应该导出整个 wp_posts table 并在 sublime 中进行正则表达式替换?
$str='before <h2 style="font-size: 18px"><strong>This is </strong><strong>mess</strong><strong>y</strong></h2>after';
$pos = strpos($str, "<h2");
$pos2 = strpos($str, "</h2>");
$partstr = substr($str, $pos, $pos2);
$tag = substr($str, $pos, 3);
$partstr2 = str_replace("<strong>" , "", $partstr);
$partstr2 = str_replace("</strong>" , "", $partstr2);
$partstr2 = str_replace('<h2 style="font-size: 18px">', "", $partstr2);
$newstr = str_replace($partstr, $tag . ">".$partstr2 , $str);
echo $newstr;
我不推荐preg_replace。
已编辑代码。
工作示例:http://sandbox.onlinephpfunctions.com/code/13be2bfb61de6e7d3591caf9a343011a771bab63
我正试图摆脱 wordpress 标题中的内联样式和强标签。例如<h2 style="font-size: 18px"><strong>This is </strong><strong>mess</strong><strong>y</strong></h2>
我可以使用正则表达式替换来删除标签而不丢失标签之间的文本吗?
您会推荐使用 function.php 来过滤标签,还是我应该导出整个 wp_posts table 并在 sublime 中进行正则表达式替换?
$str='before <h2 style="font-size: 18px"><strong>This is </strong><strong>mess</strong><strong>y</strong></h2>after';
$pos = strpos($str, "<h2");
$pos2 = strpos($str, "</h2>");
$partstr = substr($str, $pos, $pos2);
$tag = substr($str, $pos, 3);
$partstr2 = str_replace("<strong>" , "", $partstr);
$partstr2 = str_replace("</strong>" , "", $partstr2);
$partstr2 = str_replace('<h2 style="font-size: 18px">', "", $partstr2);
$newstr = str_replace($partstr, $tag . ">".$partstr2 , $str);
echo $newstr;
我不推荐preg_replace。
已编辑代码。
工作示例:http://sandbox.onlinephpfunctions.com/code/13be2bfb61de6e7d3591caf9a343011a771bab63