Is it possible to change the page title with code?
For example, let’s say the page’s name is “Book your Order”, but I want to change it to “Book Order #123”.
I Google’d a bit and looked here and didn’t see anything. Anyone know of a plugin or hack?
wp_title returns the page title but doesn’t allow setting the page title:
http://codex.wordpress.org/Function_Reference/wp_title
There is no documentation on it but you could always apply a filter to
the_title
like this:See these:
http://codex.wordpress.org/Function_Reference/the_title
http://codex.wordpress.org/Function_Reference/add_filter
As of WordPress 4.4, you can use the WordPress filter
document_title_parts
to change the title.Add the following to
functions.php
:For those wishing to change the document’s
title
attribute, I found that using thewp_title
filter no longer works. Instead, use thepre_get_document_title
filter:Source
When having Yoast enabled you need to override the title like so:
Really depends if you’re looking to display a custom title for the current page (i.e. the contents of the
<title></title>
tag in the header) or filter the title of pages in the page body or in listings.In the former case (the title of the current page), try adding a filter for
wp_title()
like so:http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_title
If you want to modify page titles across the board, filtering
the_title()
will do the trick:http://codex.wordpress.org/Plugin_API/Filter_Reference/the_title
If you’re using All In One Seo v4+, use this filter:
Actually the easiest way to do this is use one line of js.
Put the following code in the template:
This code doesn’t has to be in the html header, it can be put in the html body.