Wordpress, если функция возвращает «ничего» - PullRequest
1 голос
/ 29 июля 2010

Я создаю тему WordPress. Я хочу, чтобы следующий и предыдущий DIV отображались только при наличии следующей и предыдущей кнопки.

Если есть 10 постов и ограничение показа 10 постов, я не хочу пустого div.Однако, когда есть 20 постов, а предел отображения равен 10, я хочу, чтобы следующая и предыдущая кнопки отображались там в собственном div.

Я дошел до этого и понял, что posts_nav_link () не возвращает ноль.

function next_previous_div(){
print '<!-- ';
$output = posts_nav_link();
print " -->\n";
if ($output != null) 
    {   
        echo '<div class="float post" style="text-align:center">';
        echo posts_nav_link();
        echo '</div><!-- end post-->';
    };
};

Ответы [ 2 ]

5 голосов
/ 29 июля 2010

Есть несколько способов проверить, есть ли у вас предыдущая / следующая ссылка:

Test $ wp_query-> max_num_pages

Получить глобальныйссылку на объект $ wp_query и посмотрите, будет ли он больше 1. Если да, у вас есть ссылки на пейджинг1013 * Эта функция выводит эхо по умолчанию, поэтому ваш нулевой тест не работает.Вам нужно захватить отраженный вывод и затем проверить:

// Capture the echoed output in the $links variable and test on it
ob_start();
posts_nav_link();
$links = ob_get_clean();

if(strlen($links) > 0){
    echo $links;
}
0 голосов
/ 29 июля 2010

Я думаю, что ближайший вы получите без пользовательских сценариев будет ...

if (!empty(get_posts_nav_link()) {
   echo '<div class="float post" style="text-align:center">';
   echo posts_nav_link();
   echo '</div><!-- end post-->';
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...