Ох там и винегрет)) при чем у каждого register_post_type свои приколы, например:
-
'query_var' => 'post_type',
- это во втором куске
-
$rewrite
- в первом нет, во втором есть
-
'exclude_from_search' => true,
- вангую, что объекты недвижимости таки должны искаться
-
'capability_type' => 'page',
- вангую, что тут редактора с разными ролями могут быть, импорт и тд, а значит capability свои надо генерить а не наследовать от page
- 'taxonomies' => array( 'estate_type', 'estate_operation', 'estate_district', 'estate_building_type', 'estate_class'),
- вот этого лучше вообще не делать, этот аргумент для встроенных таксономий подходит, для кастомных - не очень. Там порядок регистрации и связки таксономий и типов записей немножко не такой, как вы думаете. Связку делайте через таксономии - регистируя их, указывайте для каких post_type.
Ну и много такого. Воспользуйтесь
GenerateWP -> Post Type Generator и создайте ваши custom post types по одной и той же схеме, как положено. Таксономии можете пересоздать там же. Глядишь, и баги уйдут.
ЗЫ: А вообще если у вас в проекте их много (таксономий и типов записей), то пора переходить на новый уровень - использовать
библиотеки.