• Home
  • About Mitch
  • Speaking
  • Articles
  • Contact
  • Home
  • About Mitch
  • Speaking
  • Articles
  • Contact

Digital Strategist

WordPress Developer

Content Creator

Unapologetic Punk

Mitch Canter

  • X
  • Bluesky
  • GitHub
  • Twitch
  • YouTube
  • LinkedIn
Tutorial

Checking for A Specific Post Type in WordPress

CMDR Mitchcraft

Reading time: 2 minutes

Conditional Tags are one of my all-time favorite tools to use when developing a WordPress theme.  It’s an intelligent use of programming logic that allows even non-coders to grasp the basics and, in turn, create complex and functional WordPress themes.  With the advent of custom post types, a method was needed to check for the presence of a certain post type, and display the data appropriately.  There’s not a true conditional tag, in the sense you fill in a parameter of a function and it works.  Instead, you have to use a separate function value and test for a match.  In English, here’s how to check for a specific post type:

[code]

<?php if ( ‘book’ == get_post_type() ) {

//code goes here for book-type content

} ?>

[/code]

If you need to display an either/or content string, the code doesn’t change much:

[code]

<?php if ( ‘book’ == get_post_type() ) {

//code goes here for book-type content

} else {

//code goes here for all non book-type content

} ?>

[/code]

A good example of this would be my portfolio page.  If both the portfolio post type and my normal blog posts were sharing a template, but I needed to add a Pinterest Button to my portfolio, but not to my blog posts, it may look something like this:

[code]

<?php if ( ‘portfolio’ == get_post_type() ) { ?>

<a href=”http://pinterest.com/pin/create/button/?url=<?php echo urlencode(get_permalink($post->ID)); ?>&media=<?php echo $pinterestimage[0]; ?>&description=<?php the_title(); ?>” count-layout=”horizontal”>Pin It</a>

<?php } ?>

[/code]

The only problem is there’s no way to use the bang symbol in front (like a typical post type) to show that it is NOT the value specified.  Instead, we have to change the operator from “Equals” to “Does Not Equal”, like so:

[code]

<?php if ( ‘book’ != get_post_type() ) {

//code goes here for non book-type content

} ?>

[/code]

So, more than a few snippits to get you showcasing your post-type specific data quickly and easily.

conditional tag, custom post type, get_post_type, WordPress
  • The State of WordPress Plugin Development

    The State of WordPress Plugin Development

    Reading time: 4 minutes

    Seeing all the fun plugins you guys posted to the site today has reminded me of a topic that I’ve both seen published on other sites as of late and been pondering myself lately – the authors.  I’ve co-created a plugin, and it’s currently residing well in the plugin repository, but it hasn’t been all…

    WordPress
  • Custom Branded Google Search With WordPress

    Custom Branded Google Search With WordPress

    Reading time: 5 minutes

    I’ve been playing around with some really cool features in WordPress lately.  With my site, and a few others i’ve been working on, I’ve been toying with the “Page Template” feature that allows me to customize which elements show up on a page (like, a sidebar, specific headers, a footer, etc).  But, while working specifically…

    Tutorial, WordPress