Recently, I was working on a WordPress install employing several custom post types to handle two separate “blogs” within a single site. The site used normal ‘posts’ to handle articles and the client wanted to append the word “BLOG” to the beginning of blog posts’ titles only.
Using the Codex I slapped something together rather easily.
Using the following snippet, I built a simple if statement to test for blog posts, and if not, to render the_title() minus any extra text.
// First test for the post type(s) <?php global $post if (get_post_type($post) == 'post_type_1') || get_post_type($post) == 'post_type_2') { ?> // IF either test registers true, then set the $before parameter in this format: the_title($before, $after); <h1><a href="<?php the_permalink(); ?>"><?php the_title('BLOG: ', ''); ?></a></h1> // IF not, then display as normal <?php } else { ?> <h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1> // Close the IF statement <?php } ?>
Using this example, posts that register as true would display like this:
BLOG: The post title