Multiple categories form with checkboxes (6 posts)

  1. Anydog
    Posted 5 years ago #

    Hi, it's me again ... ;-)
    Here's the situation:
    I have, let's say, 5 categories:"Stores", "Museums", "Garages", "Sports", "Towns", and the last one - "Towns" is hidden (excluded) from cateogries menus.
    I would like to, when I click on "Stores", and I get archive page with posts in that category, on the top of that page is form with checkboxes te select child categories of "Towns".
    So, I would like that I, while on "Stores" archive page,can check one or few boxes with towns, and when clicks "Submit" to display posts that are in - "Stores" AND "New York" AND "Washington" (in other words - stores located in N.Y and Washington).
    Here my code, so far (which doesn't work, off course):

    <?php $cat_ID = $cat; ?>
    <form action="<?php query_posts(array('category__and' => array($cat_ID,array($categories->term_id)))); ?>">
    <?php $categories=get_categories('child_of=5&hide_empty=0');
    	foreach($categories as $category) {
    		echo "<input type='checkbox' name='mychecky' value='$category->term_id' />";
    		echo $category->cat_name;
    		echo '<br />';    }
    <?php while (have_posts()) : the_post(); ?> ... etc (the loop here ..)

    Any help is deeply appretiated ...

  2. Anydog
    Posted 5 years ago #

    Anyone ? I'm still stuck with this ...

  3. jcskyrocket
    Posted 5 years ago #

    Anydog, did you ever work this out? I need something similar...

  4. Anydog
    Posted 4 years ago #

    Oh, I missed your post ... Nope, sorry, I didn't solve this, at least not in this manner. I used tags to make this "intersections".
    In future I believe I will solve this kind of stuff with custom post types and custom taxonomies.

  5. mtyaad
    Posted 4 years ago #

    I also missed this post
    I opened a post with a similar problem
    and I also still can not find a solution


  6. matthew
    Posted 4 years ago #

    what everyone wants is an intersection, not a union of categories. so if i click cat A and cat B, what's returned is posts matching only A + B, not everything in A and everything in B. is this correct?

    well, in case anyone is still looking for this, i was going crazy trying to figure it out but i managed a solution.

    the code is here http://pastebin.com/djHB1hcA

    basically the first half is the code that is returned when the user submits the form. it parses the checkboxes, and puts that into a query to display only an intersection of the two.

    the second half of the code is the creation of the form and the checkboxes. I've separated the checkboxes by parent category for my own reasons, but all you need to do if you aren't using subcategories is to replace the 'for each' query with the appropriate call.

Topic Closed

This topic has been closed to new replies.

About this Topic