带有html字符的wp_update_post“post_title”

时间:2016-03-18 09:29:23

标签: wordpress

我需要像这样设置post_title:

wp_update_post(array('ID' => 1, 'post_title' => '<div id="123">Hello, world!</div>');

但是在执行该功能后,标题会转换为以下内容:

<div>Hello, world!</div>

请告知如何设置该标题?

P.S。 Wordpress引擎的版本是最新的。

1 个答案:

答案 0 :(得分:0)

您可以在使用函数更新帖子参数之前删除过滤器 kses :

kses_remove_filters();

示例:

  // Update post
  $my_post = array(
      'ID'           => 1,
      'post_title'   => '<b>This</b> is the<br> test.',
  );

  remove_filter( 'title_save_pre', 'wp_filter_kses' ); // disable clean html 

  // Update the post into the database
  wp_update_post( $my_post );

文档: https://developer.wordpress.org/reference/functions/kses_remove_filters/