This plugin is designed to help you curate your content.
Assign and order stories within zones that you create, edit, and delete. Then use the handy API functions to retrieve and display your content in your theme. Or for those who are a bit code-averse, try the handy widget.
Key features included in the plugin:
- Add/edit/delete zones
- Add/remove posts (or any custom post type) to/from zones
- Order posts in any given zone
- Limit capabilities on who can add/edit/delete zones vs add content to zones
- Locking mechanism, so only one user can edit a zone at a time (to avoid conflicts)
- Idle control, so people can’t keep the zoninator locked
This plugin was built by Mohammad Jangda in conjunction with William Davis and the Bangor Daily News.
Download
Latest version: Download Zone Manager (Zoninator) v0.2 [zip]
Installation
- Unzip contents and upload to the
/wp-content/plugins/directory - Activate the plugin through the ‘Plugins’menu in WordPress
- Go to Dashboard > Zones to create and manage zones.
- Use the plugin’s handy API functions to add zones to your theme.
- Enjoy!
FAQ
Q. How do I disable the locking feature?
A. You can use a filter:
add_filter( 'zoninator_zone_max_lock_period', 'z_disable_zoninator_locks' );
Q. How do I change the the locking feature settings?
A. Filter the following and change according to your needs:
zoninator_zone_lock_period
- number of seconds a lock is valid for, default
30
zoninator_zone_max_lock_period
- max idle time in seconds
Changelog
0.2
- Move Zones to a top-level menu so that it’s easier to access. And doesn’t make much sense hidden under Dashboard.
- Change the way error and success messages are handled.
- jQuery 1.6.1 compatibility.
- Bug fix: Custom Post Types not being included in search. Thanks Shawn!
- Bug fix: Custom Post Types not being included in post list. Thanks Daniel!
- Bug fix: Error thrown when removing last post in a zone. Thanks Daniel!
- Other cleanup.
0.1
- Initial Release!
shawn 3:50 am on May 22, 2011 Permalink |
How do I get zoninator to pick up on my custom post types?
I have already created my post-types, and have the front end working, but when I type in words that are only found in my custom post-type, the results never show up on the admin end of zoninator
Mohammad Jangda 10:32 am on May 22, 2011 Permalink |
You need to explicitly add support for the post type:
< ?phpadd_action( 'init', 'my_init_zoninator_post_types' );
function my_init_zoninator_post_types() {
add_post_type_support( 'my-custom-post-type', 'zoninator-zones' );
}
shawn 2:13 pm on May 22, 2011 Permalink |
Thank you!
I knew it had to be something really simple that I was missing.
Gotta say, this is one of the coolest concept plugins I have come across in a very long time.
shawn 2:22 pm on May 22, 2011 Permalink |
Actually, I think I may be missing a step somewhere. I have a custom post-type ‘podcast’running on my site. I added the code snippet you supplied to my theme’s functions.php file changing out the post type to podcast. (I did double check to make sure that my post-type is singular, and it is. It is also registered public and searchable.)
When I go into the zone manager, and then into a zone which I setup, everything works. However, if I type into the search field, the title of my podcast that I am searching for, it does not show up in the list. I have tried using the title, and also keywords that only exist in that post, but still no joy. It still only shows posts.
Is there another step that I am missing?
Mohammad Jangda 12:09 am on May 23, 2011 Permalink |
Turns out it was a bug in the plugin. You can either use the development version or apply the changes from this revision.
shawn 2:52 am on May 23, 2011 Permalink
I tried the dev vs. and had the same results, no posts showing up from my custom post-type.
I am running wp 3.2beta1 if that makes any difference.
*Is there supposed to be a function called zoninator-zones somewhere in the plugin? can’t find one, so am unsure what the action is modifying.
Eric 9:46 pm on May 24, 2011 Permalink
We’re testing the zoninator for a new site (3.1.2). We really like it so far. We’ve had to make the following changes to be able to use custom post types in zones:
add the post type to the post_types array at line 72
$this->post_types = array( ‘post’, ‘our_custom_post_type’);
add the post_types array to the query args at line 818
$args['post_type'] = $this->get_supported_post_types();
Without this, we could not query and save a custom post type.
shawn 6:18 pm on May 25, 2011 Permalink
@Eric
Thank you so much, it worked perfectly!
I had tried that route in the beginning but only modified the first line. I had totally forgotten that once defined that I needed to add the argument.
Now I am off to see what I can do with the plugin as I have so many really cool ideas.
Thanks again!
shawn 7:25 pm on May 25, 2011 Permalink |
Request:
How do I call the loop for a specific zoninator-zone?
Idea is that I am going to use zoninator to populate my slider with posts and custom post-types.
I am struggling to figure out the arguments to use in my loop to limit the output to a specific zoninator-zones posts…. Yeah I know, stupid question but I guess others will ask the same someday
Tim Beckwith 4:55 pm on July 4, 2011 Permalink |
I have installed your zoninator plugin but cannot see its value, usefulness, or how it works at all. Take your installation instruction #3 which reads, “Go to Dashboard > Zones to create and manage zones.” Well, I go to my Dashboard and see there is nothing called “Zones” anywhere. No listing called Zones, no menu item called Zones, nothing! So, of course there is no obvious way to “create” or “manage” zones. I’m using WordPress 3.1.4 and the Atahualpa 3.6.7 theme. Are zones meant to be a way to order the layout of your posts? If so, how do they do that? Or are they just another way to segregate types of posts, like categories (and if so why not just use categories?). I suggest you need to spend more time explaining the purpose, value, and implementation of your plugin and less time on programing and assuming we can all read your mind.
Mohammad Jangda 12:33 pm on August 25, 2011 Permalink |
Sorry for the lack of documentation. I’ve been meaning to do an in-depth blog post for a while but it keeps slipping. I’ll try to get one done soon.
Paolo 12:29 pm on August 25, 2011 Permalink |
My question is the same of the shawn’s one: how to integrate with the loop? z_get_posts_in_zone() returns a list of post, as a “new WP_Query()” does?
Thanks for your work!
Mohammad Jangda 12:32 pm on August 25, 2011 Permalink |
You would use it the same way as a
get_posts()call. As an example, you can look at the code for the widget that comes with the plugin.