Title: Map Cap
Author: thenbrent
Published: <strong>July 31, 2010</strong>
Last modified: August 15, 2013

---

Search plugins

This plugin **hasn’t been tested with the latest 3 major releases of WordPress**.
It may no longer be maintained or supported and may have compatibility issues when
used with more recent versions of WordPress.

![](https://s.w.org/plugins/geopattern-icon/map-cap.svg)

# Map Cap

 By [thenbrent](https://profiles.wordpress.org/thenbrent/)

[Download](https://downloads.wordpress.org/plugin/map-cap.2.1.zip)

 * [Details](https://wordpress.org/plugins/map-cap/#description)
 * [Reviews](https://wordpress.org/plugins/map-cap/#reviews)
 *  [Installation](https://wordpress.org/plugins/map-cap/#installation)
 * [Development](https://wordpress.org/plugins/map-cap/#developers)

 [Support](https://wordpress.org/support/plugin/map-cap/)

## Description

Using custom post types on your site?

Install this plugin to control which roles can publish, edit and delete posts of
each custom type.

For this plugin to work, your custom post type must meet a number of requirements
as outlined in the [FAQ](https://wordpress.org/extend/plugins/map-cap/faq/).

## Screenshots

 * [[
 * **Admin Map Cap Settings Page** – Site administrators can choose the capabilities
   each role has for each custom post type.

## Installation

 1. Download and unzip the plugin
 2. Upload the `map-cap` folder to the `/wp-content/plugins/` directory
 3. Activate the plugin through the `Plugins` menu in WordPress
 4. Navigate to `Map Cap` under the `Settings` menu to set capabilities

## FAQ

  Why aren’t all my custom post types listed on the options page?

There are four requirements for a custom post type to show up in Map Cap’s settings
page.

The post type must:

 1. be public
 2. not be a built-in post type eg. page & post
 3. use a custom capability type (not the default capability of _post_). This is done
    when registering the Custom Post Type. In the `$args` array you pass to the `register_post_type`
    function, your plugin must have `capability_type =>` set to something other than
    post.
 4. be registered with the `map_meta_cap` argument set to `true` – the default is `
    false`. Without this parameter set to `true`, WordPress does not map any meta capabilities.

  Force Mapping

As many custom post types do not set the `map_meta_cap` to true, Map Cap offers 
an option to change the value of the `map_meta_cap`.

For this to work, the plugin must register the post type on the `init` hook with
a priority less than 10,000.

This feature works with the [Custom Post Type UI plugin](https://wordpress.org/extend/plugins/custom-post-type-ui/)
plugin but is not guaranteed to work with any other plugins.

  Using the Custom Post Type UI plugin?

If you are using the [Custom Post Type UI plugin](https://wordpress.org/extend/plugins/custom-post-type-ui/),
when adding a custom post type, you must click _View Advanced Options_ and change
_Capability Type_ to something other than _post_. For example, for a custom post
type of _Stories_ the capability could be _story_.

You then need select the custom post type under the _Force Mapping_ section of the
Map Cap settings page.

  Where can I report bugs?

Add a new post in the WordPress.org [Plugin’s Support Forum](https://wordpress.org/tags/map-cap).

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Map Cap” is open source software. The following people have contributed to this
plugin.

Contributors

 *   [ thenbrent ](https://profiles.wordpress.org/thenbrent/)

[Translate “Map Cap” into your language.](https://translate.wordpress.org/projects/wp-plugins/map-cap)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/map-cap/), check out
the [SVN repository](https://plugins.svn.wordpress.org/map-cap/), or subscribe to
the [development log](https://plugins.trac.wordpress.org/log/map-cap/) by [RSS](https://plugins.trac.wordpress.org/log/map-cap/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 2.1

 * Fix ‘Invalid argument supplied for foreach() in map-cap.php on line 268’ when
   deactivating a plugin or theme which registered the custom post type Map Cap 
   was operating on

#### 2.0

 * Changing capabilities for custom posts with “post” capability type no longer 
   allowed
 * Option to change the `map_meta_cap` flag at run-time
 * When changing a shared capability, a warning is shown
 * Readme changes to help resolve common issues.
 * Fixing bug where a post without the ‘author’ feature could not be trashed while
   having Draft status.

#### 1.0

 * Initial release.

## Meta

 *  Version **2.1**
 *  Last updated **13 years ago**
 *  Active installations **200+**
 *  WordPress version ** 3.1 or higher **
 *  Tested up to **3.1.4**
 * Tags
 * [capabilities](https://wordpress.org/plugins/tags/capabilities/)[custom post types](https://wordpress.org/plugins/tags/custom-post-types/)
   [roles](https://wordpress.org/plugins/tags/roles/)
 *  [Advanced View](https://wordpress.org/plugins/map-cap/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  4 5-star reviews     ](https://wordpress.org/support/plugin/map-cap/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/map-cap/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/map-cap/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/map-cap/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/map-cap/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/map-cap/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/map-cap/reviews/)

## Contributors

 *   [ thenbrent ](https://profiles.wordpress.org/thenbrent/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/map-cap/)