你首先应该知道div来自哪里,因为这不是正常的行为。可以是来自插件,或者如Damien所说,复制粘贴Word中的文本。
要删除div,可以执行以下操作
str_replace(array(\'<div>\', \'</div>\'), \'\', $content)
在将文本存储到数据库之前(通过挂接
save_post
), 或在站点上显示之前(通过在
the_content
).
编辑:我错了,你不要上钩save_post
, 但你却在过滤wp_insert_post_data
. 以下功能应起作用:
function remove_divs($data) {
$filteredContent = str_replace(array(\'<div>\', \'</div>\'), \'\', $data[\'post_content\']);
$data[\'post_content\'] = $filteredContent;
return $data;
}
add_filter(\'wp_insert_post_data\', \'remove_divs\', 99);
把这个放在你的函数中。php