Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

On my test case, the page' title is "Privacy". The straightforward approach

strtolower(the_title())

also returns "Privacy" -- still with a capital P. I also tried

mb_strtolower(the_title())

and

mb_strtolower(the_title(), 'utf8')

with similar results.

Not sure if it matters, but my wp-config.php has

define('WPLANG', '');
define('DB_CHARSET', 'utf8');
share|improve this question
    
thetitle() is not a WordPress function. –  toscho Jan 17 '12 at 0:29
    
oops, right you are. i fixed it. thanks! –  Jon Pincus Jan 17 '12 at 1:00
add comment

2 Answers

up vote 2 down vote accepted

lowercasing the title

If I'm understanding you correctly, you should be doing:

strtolower(get_the_title());

or

print strtolower(get_the_title());

if you want to display it. Below is an explanation as to why.

the_title() vs. get_the_title()

The function the_title() prints the current post's title unless you pass false as its third argument. Unless you call it like:

$title = the_title('', '', false);

The title will be printed, and the $title variable won't contain anything. This matters because calling strtolower() on an empty variable doesn't do very much.

You want to use get_the_title() function in most cases where you're looking to fill a variable with the content posts title.

Note, however, that if you're not currently in a loop, you'll need to pass a post ID to get_the_title(). In almost all cases when on a single post or page you can do this by using:

get_the_title($post->ID);

as the $post variable should be in the global scope.

share|improve this answer
    
Thanks, I was in fact confused betweet the_title() and get_the_title() –  Jon Pincus Jan 17 '12 at 1:01
    
You're welcome! –  Gavin Anderegg Jan 17 '12 at 1:05
add comment

I think the best method for this is by using CSS (text-transform: lowercase).

But if you want to use PHP, WP for this you can use: <h1><?php echo strtolower( get_the_title() ); ?></h1>

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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