Как получить доступ к глобальным $многостраничным или глобальным $нумерационным страницам вне цикла?


Я пишу код в заголовке, который относится к ссылке rel="предыдущая" и ссылке rel="следующая", но мне нужно проверить, является ли сообщение многостраничным. Я проверяю эти глобальные переменные:

$нумерация страниц $многостраничный

Однако они не работают в header.php или вне петли? Пример кода для проверки в заголовке (просто тест, но он не работает):

<?php
global $wp_query;
global $numpages;
global $multipage;
If ($multipage) {
echo 'This is a multipage post';
} else {
echo 'This is not multipage';
}
?>

Мне интересно, как это сделать, кто-нибудь может мне помочь, пожалуйста? Спасибо.

 3
Author: Emerson Maningo, 2012-09-29

1 answers

Просто проверьте текущее содержание публикации на предмет '<!--nextpage-->':

function wpse_check_multi_page()
{
    $num_pages    = substr_count(
        $GLOBALS['post']->post_content,
        '<!--nextpage-->'
    ) + 1;
    $current_page = get_query_var( 'page' );
    return array ( $num_pages, $current_page );
}

На странице 2 из 3, которая возвращает:

Array
(
    [0] => 3
    [1] => 2
)

В не распечатанном сообщении он возвращает:

Array
(
    [0] => 1
    [1] => 0
)
 4
Author: fuxia, 2012-10-01 17:51:58