如果没有参数max_num_ages,则GET_NEXT_POSTS_LINK不起作用

时间:2017-08-14 作者:HOY

我有一个自定义搜索页面(searchpage.php) 使用分页,我尝试将下面这样的行动态添加到header.php 在…内<head></head> 标记为更好pagination SEO.

<link rel="prev" href="https://www.example.com/search/cats/page/2/">
<link rel="next" href="https://www.example.com/search/cats/page/4/">
在执行此操作时,我使用了下面提到的代码here 在里面functions.php.

<?php
function rel_next_prev(){
    global $paged;    
    if ( get_previous_posts_link() ) { ?>
        <link rel="prev" href="<?php echo get_pagenum_link( $paged - 1 ); ?>" /><?php
    }    
    if ( get_next_posts_link() ) { ?>
        <link rel="next" href="<?php echo get_pagenum_link( $paged +1 ); ?>" /><?php
    }    
}
add_action( \'wp_head\', \'rel_next_prev\' );
?>
get_previous_posts_link() 很好,但是get_next_posts_link 不起作用,经过调查我认为需要max_num_pages 要工作的参数。

现在我无法max_num_pages 因为它在searchpage.php.

2 个回复
SO网友:Mo\'men Mohamed

尝试使用此max_num_pages 在里面searchpage.php

global $wp_query;
$wp_query->max_num_pages;

SO网友:Castiblanco

我整晚都在研究同一个问题。我所做的是。

<?php
function rel_next_prev(){
    global $paged;
    $default_posts_per_page = get_option( \'posts_per_page\' );

    if ( get_previous_posts_link() ) { ?>
        <link rel="prev" href="<?php echo get_pagenum_link( $paged - 1 ); ?>" /><?php
    }    
    if ( get_next_posts_link(null,$default_posts_per_page) ) { ?>
        <link rel="next" href="<?php echo get_pagenum_link( $paged +1 ); ?>" /><?php
    }    
}
remove_action(\'wp_head\', \'adjacent_posts_rel_link_wp_head\');
add_action( \'wp_head\', \'rel_next_prev\' );
?>
必须继续争论get_next_posts_link, 第一个为null,第二个为int,只需使用get_option( \'posts_per_page\' ), 它必须不同于0,并且在搜索页面上也可以使用。

我希望每个寻找相同问题的人都能读到这篇文章。

结束