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.

Lyza Loop


Lyza Loop is a WordPress plugin for theme developers and template-savvy folks that aims to:

  • Dramatically shorten the time required to code custom loops
  • Modularize custom loop markup using what I hope is a straightforward templating process
  • Provide convenient batching variables
  • Respect the context in which the custom loop is called and put everything back the way it was (e.g. global $wp_query and $post objects)
  • Reduce tedious and duplicated code for custom loops

There are two parts to the lyza_loop() function:

  1. Finding posts (or pages): extending query_posts()lyza_loop() takes any argument WordPress’ own query_posts() takes
  2. Rendering relevant posts or pages: using “loop templates.” A loop template is a PHP file with markup (and logic) you’d like to use for each post/page in the loop.

Read more on the plugin home page


  • Lyza Loop Settings admin screen.
  • Example of theme using a combination of Lyza Loop loops and loop templates.


Please note: This plugin requires PHP 5–it uses some of PHP’s better object-oriented programming support introduced in PHP 5. If there is great hue and cry, I might consider making it PHP 4 compatible.

  1. Unzip, then upload the lyza-loop directory to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Update defaults on the Settings -> Lyza Loop screen, if desired.
  4. See Lyza Loop documentation to get started quickly!


Please see the Lyza Loop FAQ page!

Contributors & Developers

“Lyza Loop” is open source software. The following people have contributed to this plugin.

Translate “Lyza Loop” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Added configuration option for suppressing sticky posts.
  • Added code to set $wp_query->in_the_loop to true during lyza_loop() processing.


  • Fixed a couple of typos in the constructor function.
  • Fixed bug in which post__not_in argument could get ignored if exclude_repeats is set to true (or the plugin is configured to exclude repeats by default).
  • Updated to handle sticky tags appropriately (i.e. not return them at the top of every query).


  • Initial release.