我想获得wp\\u编辑器(tinymce)的内容,然后用regex按特定单词查找一个句子。但是,不知道如何获取内容
发布或更新帖子时,该函数将获取内容,然后根据特定单词查找句子。
我的正则表达式可以得到一整句话:
$regex = \'/<p>Chapter(.*?)<\\/p>/\'; //Specific Word = Chapter
$chapnumber = \'\';
$chaptitle = \'\';
$chapcontent = "<p>Chapter 136 – Tibet and West Turk</p>"; //This should be the content
if (preg_match($regex, $chapcontent, $matches)) {
echo $matches[1];
}
有什么解决办法吗?
SO网友:Brada
我还不能发表评论。。。因此,我将使用一个答案,我认为您需要使用“wp\\u insert\\u post\\u data”过滤器。
您可以在第3523行中看到:https://developer.wordpress.org/reference/functions/wp_insert_post/
函数需要有一个参数,即数组。从那里,您应该从“post\\u content”键获取内容。
add_filter( \'wp_insert_post_data\', \'example\' );
function example( $data ){
$post_content = $data[\'post_content\'];
// ... do your stuff
$data[\'post_content\'] = $post_content;
return $data
}
注意:这不会获取tinymce内容,而是在将其引入数据库之前获取数据。您还应该注意短代码,我认为您不能通过该过滤器修改短代码中的内容。希望它能帮助你或其他人。