Disable `create_post` for built-in post type

There is no built-in capability of create_post.

Update: There is a capability create_posts but it’s not well publicised and also has issues surrounding it which I’m afraid I don’t have time to look into at the moment.

There are already answers that might help:

https://stackoverflow.com/a/3248103

https://wordpress.stackexchange.com/a/178059/94267


Original answer:

There is publish_posts. You need to turn this off for those users. Removing this capability doesn’t prevent a user or role from writing a draft post, but it does prevent them from publishing it, so it won’t be seen outside the admin.

Currently (WP 4.6) posts have these capabilities associated with them:

edit_posts
edit_others_posts
publish_posts
read_private_posts  
delete_posts
delete_private_posts
delete_published_posts
delete_others_posts
edit_private_posts
edit_published_posts

You probably want to disallow the *_private_* capabilities for anyone but Admins too.