在第一次发布之前修改帖子中的内容

时间:2019-08-01 作者:user3466661

我正在尝试创建一个函数(没有成功),在首次发布之前修改帖子内容的特定部分。

function modifyOnPost()
{

    add_action( \'the_post\', \'modifying\' );
    function modifying( $post ) {
    $post->content = str_replace( "original text", "modified text", $post->post_content );
    }
}
add_action(\'publish_post\', \'modifyOnPost\');
什么都没有发生,甚至连错误代码都没有。

任何指向正确方向的帮助都将不胜感激。

1 个回复
SO网友:middlelady

您应该使用save_post 如下所示:

function modifyOnPost( $post_id ) {
   $post = get_post($post_id);
   //do stuff here before your post is created or updated
}
add_action( \'save_post\', \'modifyOnPost\' );
阅读更多信息here.

更新:

提供您可以使用的更深入的解决方案wp_update_post( $post, $wp_error ); 内部modifyOnPost 块来操作post数据。

相关推荐

初学者问题:通过管理Web界面访问Functions.php以导入自定义帖子类型?

是否可以访问这些功能。php文件仅仅使用管理web界面?我正在尝试访问以前创建的(手动编码的)自定义帖子类型,我不得不跳过很多障碍,因为我无法访问函数中的代码。php文件。我已经浏览了很多帮助页面,但建议的步骤似乎总是涉及到函数。php文件(我无法访问)或使用插件中的导入/导出工具,该插件首先创建了自定义帖子类型(据我所知,没有使用任何插件)。这似乎是一个非常基本的问题,但我一辈子都想不出来。任何帮助都将不胜感激!