the_sleeper
asked on
WordPress Pagination Question: Determining page of a post (i.e. $paged > 1)
Greetings,
In this code snippet the author is dynamically rendering the Title tag based on things like what page the user is on.
I understand (i.e. can run to the codex and figure out) ... most all of it except this little nugget:
if ($paged>1) ....
Apparently nowhere in the theme is a variable $paged being set!?!
1. Is this some global variable deep in the innards of a WordPress function (cuz, i cant find it)?
2. Is this a variable created by the theme author (cuz, I cant find where $page is set in his code, either)
3. I understand in theory that this code deals with pagination. Correct?
Full code snippet below, please illuminate: I'm green.
sleeper
In this code snippet the author is dynamically rendering the Title tag based on things like what page the user is on.
I understand (i.e. can run to the codex and figure out) ... most all of it except this little nugget:
if ($paged>1) ....
Apparently nowhere in the theme is a variable $paged being set!?!
1. Is this some global variable deep in the innards of a WordPress function (cuz, i cant find it)?
2. Is this a variable created by the theme author (cuz, I cant find where $page is set in his code, either)
3. I understand in theory that this code deals with pagination. Correct?
Full code snippet below, please illuminate: I'm green.
sleeper
<?php
if (function_exists('is_tag') && is_tag()) {
single_tag_title("Tag Archive for ""); echo '" - '; }
elseif (is_archive()) {
wp_title(''); echo ' Archive - '; }
elseif (is_search()) {
echo 'Search for "'.wp_specialchars($s).'" - '; }
elseif (!(is_404()) && (is_single()) || (is_page())) {
wp_title(''); echo ' - '; }
elseif (is_404()) {
echo 'Not Found - '; }
if (is_home()) {
bloginfo('name'); echo ' - '; bloginfo('description'); }
else {
bloginfo('name');
}
if ($paged>1) {
echo ' - page '. $paged; }
?>
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
or is $paged simply a parameter of the WP_Query object. If so, how is calling it without something like
what am i missing?
sleeper
$paged = WP_QUery( 'paged ' )
what am i missing?
sleeper
OK, I was wrong. I looked a little deeper and found that was an attempt by a commenter at Perishable Press trying to add the page number to the end of the title. At first it appeared to be a pagination tag, you can find similar here: http://codex.wordpress.org/Conditional_Tags
The article that I found which referenced the tag you have is here:
http://perishablepress.com/press/2008/07/21/how-to-generate-perfect-wordpress-title-tags-without-a-plugin/
The WordPress Trac on the subject (2 years old):
http://core.trac.wordpress.org/ticket/9104
. It appears that it wasn't successful. Maybe it got dropped and deemed useless.
The article that I found which referenced the tag you have is here:
http://perishablepress.com/press/2008/07/21/how-to-generate-perfect-wordpress-title-tags-without-a-plugin/
The WordPress Trac on the subject (2 years old):
http://core.trac.wordpress.org/ticket/9104
. It appears that it wasn't successful. Maybe it got dropped and deemed useless.
ASKER
Yeah, I was watched Chris Coyier's video training @ Lynda.com (also just bought the book).
I see the post you were referring to, but I still don't get where that $paged variable is coming from.
I see the post you were referring to, but I still don't get where that $paged variable is coming from.
ASKER
I must be dense....
Just scanned the book "Digging into WordPress" and it's here again (and again - with no explanation of this $paged variable) .
Book states:
...and there on the first line is a conditional check of the variable $paged..?
@jeremyjared74: It is saying if there is Greater than 1 page then...
I get that part...
@jeremyjared74: ...use the pagination that is built into WordPress.
This is the part I don't get ...are you saying that the variable $paged is built into WordPress, cuz in the context of these examples, it must be ... so why cant I find anything on it in the codex?
I don't get it...
sleeper
Just scanned the book "Digging into WordPress" and it's here again (and again - with no explanation of this $paged variable) .
Book states:
By using a strategic set of conditional tags in the “header.php” file for your theme, it is possible to address search-engine behavior for virtually all types of pages, thereby enabling you to fine-tune the indexing and crawling of your site’s content.
To see how this is done, consider the following code:
...and there on the first line is a conditional check of the variable $paged..?
<?php if(is_home() && (!$paged || $paged == 1) || is_single()) { ?>
<meta name="googlebot" content="index,archive,follow,noodp" />
<meta name="robots" content="all,index,follow" />
<meta name="msnbot" content="all,index,follow" />
<?php } else { ?>
<meta name="googlebot" content="noindex,noarchive,follow,noodp" />
<meta name="robots" content="noindex,follow" />
<meta name="msnbot" content="noindex,follow" />
<?php } ?>
@jeremyjared74: It is saying if there is Greater than 1 page then...
I get that part...
@jeremyjared74: ...use the pagination that is built into WordPress.
This is the part I don't get ...are you saying that the variable $paged is built into WordPress, cuz in the context of these examples, it must be ... so why cant I find anything on it in the codex?
I don't get it...
sleeper
ASKER
Did some more digging and discovered that yes - WordPress does use Global Variables and this $paged thingy is one of them. Check this out...
http://codex.wordpress.org/User:CharlesClarkson/Global_Variables
http://codex.wordpress.org/User:CharlesClarkson/Global_Variables
ASKER
Funny...
here http://codex.wordpress.org/User:CharlesClarkson/Global_Variables you will read this...
... and in this list is this (among others)
$page (unknown)
$page_cache (unknown)
$paged (unknown)
$pagenow (unknown)
$pages (unknown)
Oh well. @jeremyjared74, you were right on with the "built in" comment, but it was bugging me that I didn't understand why you were right.
...now I get it. But it would have been nice if the reference book(s) explain that little nugget (or better yet, talked about the Global Variables in some detail)
sleeper
here http://codex.wordpress.org/User:CharlesClarkson/Global_Variables you will read this...
Undefined Global Variables
The following variables are global in scope, but do not have a definition here yet. You can help by adding a definition for these global variables.
... and in this list is this (among others)
$page (unknown)
$page_cache (unknown)
$paged (unknown)
$pagenow (unknown)
$pages (unknown)
Oh well. @jeremyjared74, you were right on with the "built in" comment, but it was bugging me that I didn't understand why you were right.
...now I get it. But it would have been nice if the reference book(s) explain that little nugget (or better yet, talked about the Global Variables in some detail)
sleeper
The $paged tag is in use, it was the specific if ($paged>1) that I had a hard time finding documentation on. I don't think this was ever "part of" the WordPress core tags, but more of a hack by a user.
ASKER
Thanks for all your help, jeremyjared74
stay close... lot more learning to go :)
sleeper
stay close... lot more learning to go :)
sleeper
ASKER
"paged (int) - number of page. Show the posts that would normally show up just on page X when using the "Older Entries" link.".
thanks