DISCLAIMER: this post is older than one year and may not be up to date with latest WordPress version.

The stadard wp_list_categories() functions echoes a list of all your categories. Let’s see how we can easily force the display of categories on two columns.

Simply paste the following piece of code where you’d like your categories to be displayed:

$cats = explode("<br />",wp_list_categories('title_li=&echo=0&depth=1&style=none'));
$cat_n = count($cats) - 1;
for ($i=0;$i<$cat_n;$i++):
if ($i<$cat_n/2):
$cat_left = $cat_left.'<li>'.$cats[$i].'</li>';
elseif ($i>=$cat_n/2):
$cat_right = $cat_right.'<li>'.$cats[$i].'</li>';
<ul class="left">
<?php echo $cat_left;?>
<ul class="right">
<?php echo $cat_right;?>

Then, just save the file, and enjoy!

Credits goes to Blog Oh Blog for this awesome recipe!


  1. I’m converting a category to custom post types and would like to achieve the same thing for my custom taxonomies. Any idea how to convert this snippet to do this?


  2. excentricus, add the parameter: &taxonomy=mycustomtaxonomy

  3. is this will be automatically..??

  4. This is freakin’ awesome and just what I’m looking for. I’m using it for taxonomies but I don’t want them to be linked.
    What do I need to do to remove the anchors?


  5. I tried to change the number 2 to 3 on the lines number 6 and 8 of the given code, in order to get a list with three columns but it did not work. Any idea on how to get a three column list?

Leave a Comment

Your email address will not be published. Required fields are marked *