Skip to content

Category Archives: PressPermit

WP 4.5, PHP 7

Press Permit Core 2.3.9 resolves a few issues with WordPress 4.5 and PHP 7 compatibility. New features include a sortable Groups column on the Users screen, updated WP-REST v2 compatibility (Pro w/ PP Collaborative Editing extension) and support for some new Hidden Content Teaser options (Pro extension). Pro users have several extension updates available.

WP 4.4, REST API support

Press Permit Pro now includes preliminary support for the new WordPress REST API. This provides a direct http interface to WordPress data, allowing for a decoupled architecture which appears to be the future of WordPress and much of the web. Although the current WordPress release (4.4) does not actually implement this API, you can activate the REST API (version 2) plugin to activate the endpoints to make it work. These are presumably similar to the default endpoints which will be included in WordPress 4.5.

Press Permit Pro development and testing to date has been against the REST API 2.0-beta9 plugin. Filtered data includes Posts, Terms and Post / Term relationships accessed through the standard WP_REST_Posts_Controller, WP_REST_Terms_Controller and WP_REST_Posts_Terms_Controller endpoints. Retrieval, creation, editing and deletion of this content is filtered and regulated to match your site’s normal front end and wp-admin access. For testing, I used the Postman extension for Chrome. I couldn’t get the user authentication working in a reasonable time, so I just implemented my own temporary authentication based on an http argument.

Here are a few notes on implementation:

In the current beta version of REST API, to remove post terms you must pass the force argument:
DEL /wp-json/wp/v2/posts/1/categories/?force=1

When using the REST API to retrieve posts or terms, the default behavior is to treat it as a “front end” result set. All readable items are returned. To allow for voluntary “What you see is what you can edit” filtering, I have implemented the following nonstandard http argument: operation.

To return editable pages:
GET /wp-json/wp/v2/pages/?operation=edit

To return assignable categories:
GET /wp-json/wp/v2/categories/?operation=assign&post_type=post

To return manageable categories:
GET /wp-json/wp/v2/categories/?operation=edit

WP 4.2 and Nginx

Press Permit Core and its Pro extensions have been updated for WordPress 4.2 compatibility, user-requested features and minor bug fixes. The most exciting development is new support within PP File URL Filter for generation of Nginx rewrite rules. Control of direct file URL access requires rewrite rules at the server configuration level, but previously only Apache server was supported.

Note that whereas Press Permit Pro provides Apache solutions with nearly zero configuration, Nginx solutions are not complete out-of-the-box. Due to differences in the behavior of Nginx, server administrators will also need to implement their own script to trigger an Nginx configuration reload. Press Permit Pro members may read documentation for plugin configuration after logging in. Although development, troubleshooting and support of your main Nginx configuration and system-level scripts are outside plugin supports, questions regarding plugin configuration may be directed to the support forums on this site.

WP 4.1 Compatibility

Press Permit Core 2.1.50 is now available for download from This version is tested for compatibility with WP 4.1.

Now Supporting Co-Authors+

Yesterday’s updates to Press Permit Core (2.1.46) and PP Compatibility (2.1.15) add support for the Co-Authors Plus plugin. Those running PP Core can enable a new setting to keep a co-author’s posts (and also uneditable posts) visible in the wp-admin listings. This setting is Permissions > Settings > Core > Admin Back End > Hide non-editable posts.

Pro users who activate the PP Compatibility extension will continue to have a “what you see is what you can edit” listing, with co-author permissions treated the same as the main post author.

Free PP Core Download

Press Permit Core is now a free download. Get it here!

After downloading the zip file, you can install it on your WordPress site through Plugins > Add New > Upload.

PP2 Production Release

By God’s grace, the Bashkirs did not get the last laugh this time.  After 29 months of beta development, refinement and real world performance of an ever more comprehensive permissions model, Press Permit is a production release.

As promised, this production release comes with documentation:

For those of you who are still running the PP 1.x beta code and would like to migrate to the new permissions model, an import script (PP Import) is available.  There is no direct upgrade from the 1.x plugins; you will need to manually install Press Permit Core from Account > Downloads.