Ready to get started?Download WordPress

Plugin Directory


Allow users to set custom post loops for different positions of the theme in a widget-like admin interface.

In commercial theme development it's common to have different post listings across several positions of the theme. We usually end up creating post types and specific categories for users to put posts in these positions.

This plugin creates a dedicated interface for post positioning and scheduling in the theme. For example, assume you want two different post listings, one for a top slideshow, and another for featured news:

Register the positions in your functions.php:

wp_diagram_register_positions( array(
        'id' => 'home_slideshow',
        'name' => 'Home Slideshow'
        'id' => 'featured_news',
        'name' => 'Featured News'
) );

Then, after selecting the posts for each position in the Positioning menu in the admin interface, just call the custom loop in your template:

<?php $slideshow = wp_diagram_get_query( 'home_slideshow' ); ?>
<?php if ( $slideshow->have_posts() ) : ?>
    <?php while( $slideshow->have_posts() ) : $slideshow->the_post(); ?>

        <?php // Post loop like any other ?>

    <?php endwhile; ?>
<?php endif; ?>

The custom loop above will get the posts scheduled for the home_slideshow in the current time.

Requires: 3.0 or higher
Compatible up to: 3.5.2
Last Updated: 2013-7-25
Downloads: 339


5 stars
5 out of 5 stars


Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.