自定义发布类型中的POST_PARENT

时间:2015-01-12 作者:Yoga

我有两种自定义帖子类型,type1type2

我当前创建内容的工作流(从用户角度)

用户创建的帖子type1, i、 e。post1, post2, post3 在特定的一天,我们的系统会自动创建type2 是在一天结束时,即“发布”post_parent 属于post1, post2, post3 设置为post4

如何自动重置post_parent 属于post1, post2, post3 什么时候post4 是否已删除?(我想保留post1, post2, post3)post1, post2, post3 什么时候post4 是否已删除?(我要清理)

1 个回复
SO网友:tfrommen

删除帖子时挂接,检查帖子类型,然后操纵post_parent 潜在子帖子的数量(或删除帖子):

function wp_dev_174635_update_posts( $parent_id ) {

    $parent = get_post( $parent_id );
    if ( $parent->post_type !== \'type2\' ) {
        return;
    }

    $posts = get_posts( array(
        \'post_type\'   => \'type1\',
        \'post_parent\' => $parent_id,
    ) );
    foreach ( $posts as $post ) {
        // EITHER: Reset post parent entry
        wp_update_post( array(
            \'ID\'          => $post->ID,
            \'post_parent\' => 0,
        ) );

        // OR: Delete post
        // wp_delete_post( $post->ID );
    }
}

add_action( \'delete_post\', \'wp_dev_174635_update_posts\' );

结束

相关推荐

必须使用插件自动加载器:如何正确使用get_plugins()?

我的autoloader类负责加载必须使用的插件,这些插件不位于mu-plugins 文件夹要定位它们,我需要使用get_plugins() 作用According to Codex, 该函数接受一个参数:$plugin\\u folder(string)(可选):单个插件文件夹的相对路径。我的文件层次结构如下所示:|-- /mu-plugins | |-- autoload.php // only includes wpmu/autoload.php&#