• I say quick because I think this is probably pretty easy once you know how.

    I’m trying to return $ad_code if three variables are present, but it doesn’t allow the third variable I’m trying to add. I want to exclude a category (ie all single.phps should load the $ad_code but not “category 1293”).

    I am trying to use (in accordance with WordPress’ “conditional tags” codex (https://codex.wordpress.org/Conditional_Tags),

    if ( is_single() && ! is_category( '1293' ) && ! is_admin() )  {
        return prefix_insert_after_paragraph( $ad_code, 2, $content );
    }
    
    return $content;

    The code (including the code that specifies what $ad_code is) works. Just when I try to add in && ! is_category( ‘1293’ ) it still displays on all posts (not just 1293). I tried using the category name as well, but that also did the same thing.

    The third variables I’ve tried either stop $ad_code from loading on all or on no posts.

    Thanks, JMunce

Viewing 2 replies - 1 through 2 (of 2 total)
  • It sounds like you want in_category() instead. is_category() is true if WP is displaying a category-based archive page and false otherwise.

    Thread Starter JMunce

    (@jmunce)

    Yes, that is exactly what it was. Thank you.

    To elaborate for others, the is_category only works if you are on an actual category page (not just checked for a category). in_ and has_ (do the same thing) are for if you want to condition based on if your posts are checked for a category.

    Thanks, Stephen Cottontail.

Viewing 2 replies - 1 through 2 (of 2 total)
  • The topic ‘Quick question about three variables on conditional tags’ is closed to new replies.