【问题标题】:PyroCMS infinite scrolling / pagination path issuePyroCMS 无限滚动/分页路径问题
【发布时间】:2012-02-20 07:01:14
【问题描述】:

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

【问题讨论】:

    标签: jquery pagination scroll infinite pyrocms


    【解决方案1】:

    我认为您需要编辑 blog.php 控制器,并创建新的方法/函数以供无限滚动使用。

    然后只需指向:

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

    到新的控制器

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

    【讨论】:

    • 嗯,修改现有方法可行吗?它目前使用 $this->data->pagination = create_pagination('blog/page', $this->blog_m->count_by(array('status' => 'live')), NULL, 3);我可以将该计数更改为通过分页强制执行的页数与条目数吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多