WordPress Q&As Logo
WordPress Q&As Part of the Q&A Topic Learning Network
Real Questions. Clear Answers.
Ask any question about WordPress here... and get an instant response.
Q&A Balloon Q&A Logo
Post this Question & Answer:

How do I create a custom post type with specific capabilities in WordPress?

Asked on Apr 03, 2026

Answer

Creating a custom post type in WordPress allows you to organize and display different types of content beyond the default posts and pages. You can define specific capabilities for this custom post type to control user permissions.
<!-- BEGIN COPY / PASTE -->
    function my_custom_post_type() {
        $labels = array(
            'name'               => 'Books',
            'singular_name'      => 'Book',
            'menu_name'          => 'Books',
            'name_admin_bar'     => 'Book',
            'add_new'            => 'Add New',
            'add_new_item'       => 'Add New Book',
            'new_item'           => 'New Book',
            'edit_item'          => 'Edit Book',
            'view_item'          => 'View Book',
            'all_items'          => 'All Books',
            'search_items'       => 'Search Books',
            'not_found'          => 'No books found.',
            'not_found_in_trash' => 'No books found in Trash.'
        );

        $args = array(
            'labels'             => $labels,
            'public'             => true,
            'has_archive'        => true,
            'rewrite'            => array('slug' => 'books'),
            'capability_type'    => 'book',
            'capabilities'       => array(
                'edit_post'          => 'edit_book',
                'read_post'          => 'read_book',
                'delete_post'        => 'delete_book',
                'edit_posts'         => 'edit_books',
                'edit_others_posts'  => 'edit_others_books',
                'publish_posts'      => 'publish_books',
                'read_private_posts' => 'read_private_books',
            ),
            'map_meta_cap'       => true,
            'supports'           => array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments')
        );

        register_post_type('book', $args);
    }
    add_action('init', 'my_custom_post_type');
    <!-- END COPY / PASTE -->
Additional Comment:
  • Use the "register_post_type" function within an "init" action hook to ensure it runs at the correct time.
  • Define custom capabilities to control access to the custom post type, allowing for granular permission settings.
  • Remember to flush rewrite rules after registering a new post type by visiting the "Settings → Permalinks" page.
  • Consider using a plugin like "Members" to manage roles and capabilities more easily.
✅ Answered with WordPress best practices.

← Back to All Questions

Q&A Network
Real Questions. Clear Answers.
WordPress
Ask Questions / Get Answers about WordPress!
Security
Ask Questions / Get Answers about Website Security!
Web Hosting
Ask Questions / Get Answers about Hosting!
AI Marketing
Ask Questions / Get Answers about AI Marketing!
HTML
Ask Questions / Get Answers about HTML!
Photography
Ask Questions / Get Answers about Photography!
Business Finance
Ask Questions / Get Answers about Business Finance!
Performance
Ask Questions / Get Answers about Web Vitals!
Sound Design
Ask Questions / Get Answers about Sound Design!
UI/UX Design
Ask Questions / Get Answers about UI/UX Design!
VR & AR
Ask Questions / Get Answers about VR & AR!
Robotics
Ask Questions / Get Answers about Robotics!
Video Editing
Ask Questions / Get Answers about Video Editing!
Animation
Ask Questions / Get Answers about Animation!
Cybersecurity
Ask Questions / Get Answers about Cybersecurity!
AI Design
Ask Questions / Get Answers about AI Design!
Podcasting
Ask Questions / Get Answers about Podcasting!
Film Production
Ask Questions / Get Answers about Film Production!
Motion Graphics
Ask Questions / Get Answers about Motion Graphics!
Web Languages
Ask Questions / Get Answers about Web Languages!
Cloud Computing
Ask Questions / Get Answers about Cloud Computing!
AI Business
Ask Questions / Get Answers about AI Business!
Tailwind
Ask Questions / Get Answers about Tailwind!
Creative Writing
Ask Questions / Get Answers about Creative Writing!
AI Ethics
Ask Questions / Get Answers about AI Ethics!
Illustration
Ask Questions / Get Answers about Illustration!
Nursing
Ask Questions / Get Answers about Nursing!
AI Images
Ask Questions / Get Answers about AI Images!
AI
Ask Questions / Get Answers about AI!
SEO
Ask Questions / Get Answers about SEO!
Social Media Psychology
Ask Questions / Get Answers about Social Media Psychology!
DevOps
Ask Questions / Get Answers about DevOps!
AI Education
Ask Questions / Get Answers about AI Education!
AI Coding
Ask Questions / Get Answers about AI Coding!
Chatbots
Ask Questions / Get Answers about Chatbots!
AI Video
Ask Questions / Get Answers about AI Video!
Graphic Design
Ask Questions / Get Answers about Graphic Design!
AI Writing
Ask Questions / Get Answers about AI Writing!
3D Design
Ask Questions / Get Answers about 3D Design!
Data Science
Ask Questions / Get Answers about Data Science!
AI Audio
Ask Questions / Get Answers about AI Audio!
IoT
Ask Questions / Get Answers about IoT!
Web Development
Ask Questions / Get Answers about Web Development!
MobileDev
Ask Questions / Get Answers about Mobile Developement!
CSS
Ask Questions / Get Answers about CSS!
Quantum
Ask Questions / Get Answers about Quantum Computing!
JavaScript
Ask Questions / Get Answers about JavaScript!
Bootstrap
Ask Questions / Get Answers about Bootstrap!
Networking
Ask Questions / Get Answers about Networking!
Analytics
Ask Questions / Get Answers about Analytics!
Digital Burnout
Ask Questions / Get Answers about Digital Burnout!
Monetization
Ask Questions / Get Answers about Ad & Monetization!