WordPress 5.5在旧插件中打破了分页

时间:2020-08-24 作者:ErwinV

我不得不使用一个不再维护的旧插件。我面临的问题是,在WordPress 5.5中,插件使用的分页会中断。你只看到第一页。

这是它使用的分页代码:

<?php

if ($data[\'total_pages\'] > 1)
{
    $add_args = $data[\'search\'];
    unset($add_args[\'paged’]);
    
    echo \'<p class="parariusoffice-pagination">\' . 
        paginate_links(array(
            \'total\' => $data[\'total_pages\'],
            \'current\' => $data[\'paged’],
        
            // maybe include this: get_option(\'permalink_structure\')
            \'base\' => rtrim(get_page_link(get_the_ID()), \'/\') . \'/%#%/\',
            \'add_args\' => $add_args
        )) .
        \'</p>\';
}

?>

<?php endif; ?>
我发现在WordPress设置中更改永久链接结构对这个错误没有影响。

我在permalinks上找到了以下信息:https://developer.wordpress.org/reference/functions/paginate_links/ , 但我无法让它工作。

如何在此插件中进行分页?

编辑:我发现主要原因是WordPress不再允许分页URL,如:/aanbod panden/2/?订单=联机\\u日期%3此处建议说明:https://core.trac.wordpress.org/ticket/51001 要将url/aanbod panden/2/末尾的数值更改为/aanbod panden/?2/

欢迎您在上述插件代码中对如何实现这一点提出任何建议!

1 个回复
SO网友:ErwinV

我终于找到了解决办法。

使用以下选项禁用重定向规范函数:

add_filter( \'redirect_canonical\', \'__return_false\' );
并修复由于禁用重定向规范而导致的404错误suggestion

相关推荐

Custom pagination structure

当前我的分页工作方式如下http://example.com/city/usa/ #for page 1 http://example.com/city/usa/page/2 http://example.com/city/usa/page/3 ...and so on 我想将其更改为:http://example.com/city/usa/ #for page 1 http:/