I”m trying to filter an archive page by custom meta query.

I’ve tried using query_posts($args) prior to the loop, but it returns nothing.
Any ideas?

Here’s what I have so far:

<?php 
        //$wolfName = $_GET['wolfName'];
        $archiveArgs = array(
                        'meta_key'  => 'wolf',
                        'meta_value'    => 'boltz'
                        );
        query_posts($archiveArgs);
        ?>
        <?php if (have_posts()) : ?>

It returns no posts… any ideas?

2 Answers
2

Use pre_get_posts action hook

function archive_meta_query( $query ) {
    if ( $query->is_archive){
      $query->query_vars["meta_key"] = 'wolf';
      $query->query_vars["meta_value"] = 'boltz';
    }
}
add_action( 'pre_get_posts', 'archive_meta_query', 1 );

Leave a Reply

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