0

我正在尝试通过将其应用于 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 提供的分页结构不同。如果有什么可以帮助您的,我将不胜感激!

4

1 回答 1

0

我认为您将需要编辑 blog.php 控制器,并为无限滚动创建新的方法/功能。

然后只需指出:

pathParse : ["/index.php/blog/page/", "/"]

到新控制器

pathParse : ["/index.php/blog/newcontroller/ " , "/"]

于 2012-02-02T11:56:12.683 回答