繁体   English   中英

自动将默认文本添加到现有和新帖子的WordPress帖子编辑器中

[英]Automatically Add Default Text Into WordPress Post Editor For Existing and New Posts

我正在尝试创建一个功能,该功能将自动为现有帖子和新帖子添加默认文本到WordPress帖子编辑器中。 我已经找到将add_filter设置为default_content的代码,并且对于新帖子来说效果很好,但是不会对现有的已发布帖子/页面产生任何影响。 当我按“更新”到现有帖子时,可以添加新的默认文本,这很好。

这是我到目前为止的内容:

function add_before_content($content) {
 $content = '<p>My default content.</p>';
return $content;
}
add_action('publish_post', 'add_before_content');
add_action('update_post', 'add_before_content');
add_filter('default_content', 'add_before_content');

提前致谢。

过滤器和操作会将不同的参数发送给它们的函数,因此您不必为不同的函数使用相同的函数。 检查过滤器/操作参考中每个参数的正确参数。

另外,没有update_post操作。 也许您想要save_post。

但是无论如何,动作可能不是您想要使用的。 它们适合于执行与动作主题相关的事情,但是要处理内容,最好使用过滤器。

例如,类似以下内容的内容可能会满足您的要求:

function add_before_content( $content ) {
  $my_content = '<p>My default content.</p>';
  if (substr($content, 0, strlen($my_content)) != $my_content) {
      $content = $my_content . $content;
  }
  return $content;
}
add_filter( 'content_save_pre', 'add_before_content', 10, 1 );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM