Я сделал так, чтобы вариации продуктов Woocommerce отображались в главном меню администратора в виде «списка типов записей».
add_filter('woocommerce_register_post_type_product_variation', 'my_func1');
function my_func1($arr){
$arr['public'] = true;
$arr['supports'] = array('title', 'editor', 'custom-fields');
$arr['menu_icon'] = 'dashicons-calendar-alt';
$arr['menu_name'] = 'Dates';
$arr['label'] = 'Dates';
return $arr;
}
При просмотре страницы администратора пост-типа в режиме отладки я получаю:
Notice: Undefined property: stdClass::$delete_posts in /wp-admin/includes/class-wp-posts-list-table.php on line 400
Если я var_dump в строке 392 в class-wp-posts-list-table.php: var_dump($post_type_obj);
Результатом является объект без "delete_posts"определено, только" delete_post "определено.
["cap"]=> object(stdClass)#16026 (8) {
["edit_post"]=> string(12) "edit_product"
["read_post"]=> string(12) "read_product"
["delete_post"]=> string(14) "delete_product"
["edit_posts"]=> string(13) "edit_products"
["edit_others_posts"]=> string(20) "edit_others_products"
["publish_posts"]=> string(16) "publish_products"
["read_private_posts"]=> string(21) "read_private_products"
["create_posts"]=> string(13) "edit_products" }`
Это недосмотр?Почему это не часть capability_type='product'?
Где эта возможность регистрируется?Как зарегистрировать возможность "delete_posts" для существующего post_type, зарегистрированного ядром Woocommerce?