虽然注册后可以操作CPT数据,但它不是很“干净”,而且有些东西更难操作。
专门针对分层设置,注册会立即将其添加到重写中:
if ( $args->hierarchical )
add_rewrite_tag( "%$post_type%", \'(.+?)\', $args->query_var ? "{$args->query_var}=" : "post_type=$post_type&pagename=" );
else
add_rewrite_tag( "%$post_type%", \'([^/]+)\', $args->query_var ? "{$args->query_var}=" : "post_type=$post_type&name=" );
因此,您必须非常小心地重做此操作,并确保它能够正确刷新重写规则。
总之,研究分叉或扩展插件的这一部分,并按照需要注册CPT,会更加健壮。