Wordpress分页不适用于插件管理员

时间:2015-07-06 15:05:01

标签: php wordpress pagination wordpress-plugin admin

在过去三天的大部分时间里,我一直在尝试各种方法,而且我已经在StackOverflow和Wordpress支持上搜索了无数的回复。是否可以在我的插件中为管理员列出帖子进行分页?

我的插件显示管理员的帖子,以便他们可以查看某些详细信息并为每个页面添加/编辑特定选项。我意识到这可以使用每个页面上的元数据完成,但我需要以这种方式完成:一次加载,比方说,25个帖子,并允许管理员添加每个页面的细节。

我已经尝试过每一个变体(我只说每一个,但我只是说我可以在Google的前20页左右找到各种搜索短语的变体)previous_posts_links,{{1等等;我已经尝试使用自定义paginate_links()函数,实例化一个新的wp_query并在我完成时恢复它(不推荐),并且完全避免使用wp_query()。我尝试添加query_posts()函数 - 但是在这一点上,pre_get_posts()可能比运行新的get_posts()更快,显然使用分页结果会更加困难。

我尝试过的代码包含了这种想法的各种变体:

wp_query()

(我已经删除了保存内容的选项,因此更容易阅读)。注意到这一点:<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $my_query = new WP_Query( array( 'number' => -1, 'posts_per_page' => '25', 'paged' => $paged ) ); while ($my_query->have_posts()) : $my_query->the_post(); echo "<div style='border:2px groove black; margin-bottom:5px;'><h3 class='postlist'>"; the_title(); echo "</h3></div>"; endwhile; ?> <nav> <?php previous_posts_link('&laquo; Newer', $my_query->max_num_pages) ?> <?php next_posts_link('Older &raquo;', $my_query->max_num_pages) ?> </nav> 我也尝试过它作为'page'而不是'paged'而且没有任何效果。

此功能显示我需要的内容:我想要加载的帖子数量,它似乎正确分页,并且分页的URL正确,但点击生成的任何分页链接什么都不做< / em>的

我已经尝试了Chris Coyier关于$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;的解决方案,然后恢复了但是这也无效。

任何想法让这个工作?非常感谢你提前!我每天都在扯掉头发几个小时,几乎无处可去。

编辑:此示例(下面)也直接从Codex中提取,生成编号的链接,但虽然它们具有正确的分页路径/ URL 但实际上并没有进入第2页,页面3,等等。

$temp = wp_query... etc

它为我提供了1,2,3 Next的链接 - 但是即使网址附加$big = 999999999; // need an unlikely integer echo paginate_links( array( 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 'format' => '?paged=%#%', 'current' => max( 1, get_query_var('paged') ), 'total' => $my_query->max_num_pages ) ); ,链接也无效。

1 个答案:

答案 0 :(得分:1)

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 

可能是你的问题 - 你可以试试......

$paged = isset($_GET['paged']) ? $_GET['paged'] : 1; 

您的分页链接需要引用分页而不是分页。