WordPress:在管理区

时间:2017-10-04 15:54:54

标签: php wordpress redirect

我使用了我建立的功能,用于在用户删除特定帖子后删除用户的所有帖子。在我的情况下,我使用名为" company"的自定义帖子类型。以及其他自定义帖子类型,例如" jobs"或"事件"。如果公司帖子被删除,该用户的所有其他帖子也将被删除。

我不知道要解决的是如何在旧帖子中添加安全301重定向。公司发布和所有其他帖子。

这是我目前使用的代码:

function delete_all_posts_from_author($post_id) {


    global $post;
    $id = $post->ID;

    // Only trigger if post type is "company"
    if ( get_post_type($id) == "company" ) {

        $author_id = $post->post_author;

        $posts_from_author = get_posts(
            array(
                'posts_per_page'    => -1,
                'post_status'       => 'publish',
                'post_type'         => array('event','job'),
                'author'            => $author_id,
                'fields'            => 'ids', // Only get post ID's
            )
        );

        foreach ( $posts_from_author as $post_from_author ) {
            wp_delete_post( $post_from_author, false); // Set to False if you want to send them to Trash.
        }
    }


}

add_action( 'publish_to_trash',  'delete_all_posts_from_author', 10, 1 );

我尝试在" wp_delete_post"之前添加以下行:

wp_safe_redirect( get_home_url() );

但没有成功。

还有其他办法吗?

0 个答案:

没有答案