Title: pass variable into &#8216;category_and&#8217; array
Last modified: August 19, 2016

---

# pass variable into ‘category_and’ array

 *  [mfshearer72](https://wordpress.org/support/users/mfshearer72/)
 * (@mfshearer72)
 * [17 years, 6 months ago](https://wordpress.org/support/topic/pass-variable-into-category_and-array/)
 * This is my code:
 *     ```
       <?php $id = get_category_by_slug('category-name'); ?> 
   
       <?php query_posts(array('category__and'=>array($id,282))); ?>
       <?php while (have_posts()) : the_post(); ?>
   
       <h3><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3>
       <p><?php the_excerpt('Read more &raquo;'); ?></p>
   
       <?php endwhile; ?>
       ```
   
 * For some reason I can only get the query to work if I put to numeric values in
   they ‘category_and’=>array, but I need to pass a variable into it based on the
   current category (this code is in the category.php file).
 * Any help is hugely appreciated!

Viewing 3 replies - 1 through 3 (of 3 total)

 *  [brockangelo](https://wordpress.org/support/users/brockangelo/)
 * (@brockangelo)
 * [17 years, 6 months ago](https://wordpress.org/support/topic/pass-variable-into-category_and-array/#post-900628)
 * Here you go bro: move down toward the bottom of this thread.
 * [http://wordpress.org/support/topic/148005?replies=20](http://wordpress.org/support/topic/148005?replies=20)
 * It starts with my asking this question:
 * >  I’d like to go back to the top of this thread to clarify something. When you
   > use this format:
   > query_posts(array(‘category__and’=>array(2,6)));
   > is it possible to replace one of the array values with a variable? I would 
   > like to get a list of posts that are in the current category (my variable) 
   > and another (static) category – but I have not yet found a way to do this.
 * Glad to see your stretching the code a bit. I’ve been getting amazing results
   lately. Unfortunately, its all on a company intranet, so I don’t get to show 
   it off. 🙂
 *  Thread Starter [mfshearer72](https://wordpress.org/support/users/mfshearer72/)
 * (@mfshearer72)
 * [17 years, 6 months ago](https://wordpress.org/support/topic/pass-variable-into-category_and-array/#post-900663)
 * I’m not getting there, unfortunately. In the suggestion solution, it reads
 *     ```
       $myarray = array(1,2);
       query_posts(array('category__and'=>$myarray));
       ```
   
 * However, in that first array , instead of having both be integers, I want one
   of them to be a variable that is pulled from whatever the current category is.
 * I am praying this will work…otherwise, 300 category templates, here I come…
 *  Thread Starter [mfshearer72](https://wordpress.org/support/users/mfshearer72/)
 * (@mfshearer72)
 * [17 years, 6 months ago](https://wordpress.org/support/topic/pass-variable-into-category_and-array/#post-900680)
 * I DID IT! I’m so stoked right now.
 * Here is the solution (adapted from this thread):
    [http://wordpress.org/support/topic/151300?replies=5](http://wordpress.org/support/topic/151300?replies=5)
 *     ```
       <?php 
   
       $cid = get_query_var('cat');
       $myarray = array($cid,282);
       query_posts(array('category__and'=>$myarray)); ?>
       <?php while (have_posts()) : the_post(); ?>
   
       <h3><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3>
       <p><?php the_excerpt('Read more &raquo;'); ?></p>
   
       <?php endwhile; ?>
       ```
   
 * So now I can pull the category id and assign it to $cid. I can then add that 
   variable into my array. Why am I doing this?
 * I have 300 pages and 300 categories with matching names (this way I can use one
   page template and one category template for all 300). In the page template I 
   have a link at the end that goes to the category for the page, dynamically, by
   inserting this clever bit of code:
 *     ```
       <?php $slug = $post->post_name; ?>
       <a href="/category/<?php echo($slug); ?>">Additional Info for <?php echo($slug); ?></a>
       ```
   
 * So the visitor clicks on the above link and are taken to the category matching
   the page name. On the category page, I run multiple query_posts like the code
   above, matching the current category plus an additional category (e.g. current
   category+questions, current category+answers)
 * So additional users can log in, ask their question, categorize it with ‘questions’
   and one of the other 300 categories and, once published, will automatically display
   in the right spot on the site.

Viewing 3 replies - 1 through 3 (of 3 total)

The topic ‘pass variable into ‘category_and’ array’ is closed to new replies.

## Tags

 * [arrays](https://wordpress.org/support/topic-tag/arrays/)
 * [category_and](https://wordpress.org/support/topic-tag/category_and/)
 * [query](https://wordpress.org/support/topic-tag/query/)

 * In: [Fixing WordPress](https://wordpress.org/support/forum/how-to-and-troubleshooting/)
 * 3 replies
 * 2 participants
 * Last reply from: [mfshearer72](https://wordpress.org/support/users/mfshearer72/)
 * Last activity: [17 years, 6 months ago](https://wordpress.org/support/topic/pass-variable-into-category_and-array/#post-900680)
 * Status: not resolved

## Topics

### Topics with no replies

### Non-support topics

### Resolved topics

### Unresolved topics

### All topics
