使用save_post
创建新节目时运行某些代码的操作,然后使用wp_insert_post
创建子页面。
下面是一个开始的示例-首先,过滤掉所有自动保存、发布修订、自动草稿和其他发布类型的保存。一旦您知道它是您的显示类型,您就可以检查它是否有父级来过滤子页面的保存。然后检查页面是否已经有子页面,如果没有,请设置帖子数据并插入子页面。
function wpa8582_add_show_children( $post_id ) {
if ( defined( \'DOING_AUTOSAVE\' ) && DOING_AUTOSAVE )
return;
if ( !wp_is_post_revision( $post_id )
&& \'show\' == get_post_type( $post_id )
&& \'auto-draft\' != get_post_status( $post_id ) ) {
$show = get_post( $post_id );
if( 0 == $show->post_parent ){
$children =& get_children(
array(
\'post_parent\' => $post_id,
\'post_type\' => \'show\'
)
);
if( empty( $children ) ){
$child = array(
\'post_type\' => \'show\',
\'post_title\' => \'About\',
\'post_content\' => \'\',
\'post_status\' => \'draft\',
\'post_parent\' => $post_id,
\'post_author\' => 1,
\'tax_input\' => array( \'your_tax_name\' => array( \'term\' ) )
);
wp_insert_post( $child );
}
}
}
}
add_action( \'save_post\', \'wpa8582_add_show_children\' );