I'm using WP_Query to select a specific set of posts:

$args = array ( 'orderby'=>'rand', 'posts_per_page' => 1, 'category_name'=>'exercise', 'tag' => 'org:abc' );
$the_query = new WP_Query( $args );

but, when I run the query, it seems to be stripping the colon (:) in the tag name, so the query (when you output it) is searching for tag='orgabc', rather than 'org:abc'.

This also seems to happen with =, i.e. 'org=abc'

I've had to change my taxonomy as a result, but does anyone know why the colon is being stripped? is this a special character?

| improve this question | | | | |

The tag parameter should be the tag's slug. If you look at your tag's archive URL (the view link when editing the tag), it won't have the colon in it, because that's not a legal character in a URL.

Your tag's name can still have the colon, and you can use the URLencoded version of a colon %3A in the slug if you want, though you will have to manually enter that in the slug field.

| improve this answer | | | | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.