我正在尝试通过将其应用于 PyroCMS (http://pyrocms.com) 安装的博客页面来实现无限滚动 jquery 插件 (http://www.infinite-scroll.com/)。但是,我遇到了重复条目的问题,因为插件似乎假设分页结构将是 page/1、page/2 等等,而 PyroCMS 将 URL 构建为 page/、page/10 , page/20 等等。有什么办法可以纠正这个吗?
我正在使用以下设置触发插件:
jQuery(document).ready(function($) {
$('#content').infinitescroll({
state : {
currPage : "10"
},
loading : {
img : "/img/loading.gif",
msgText : "<br /><br />",
finishedMsg : "All done."
},
nextSelector : "div.pagination ul li.next a",
navSelector : "div.pagination",
contentSelector : "#content",
itemSelector : "#content div.blog_post",
pathParse : ["/index.php/blog/page/", "/"]
}, function() { window.setTimeout(infinite_scroll_callback(), 1); } );
});
我在想编辑博客模块的路由文件可能可行,但我不确定如何重组它以使模块在构建分页 URL 时使用页码与博客文章的数量。路由文件的内容本质上是:
// public
$route['(blog)/(:num)/(:num)/(:any)'] = 'blog/view/$4';
$route['(blog)/page(/:num)?'] = 'blog/index$2';
$route['(blog)/rss/all.rss'] = 'rss/index';
$route['(blog)/rss/(:any).rss'] = 'rss/category/$2';
// admin
$route['blog/admin/categories(/:any)?'] = 'admin_categories$1';
我认为问题的根源在于插件只是期望与 CMS 提供的分页结构不同。如果有什么可以帮助您的,我将不胜感激!