在同一页上无限滚动多个列?

时间:2013-02-05 作者:its_me

启用无限滚动非常简单,只需将此片段添加到主题的函数中即可。php文件(其中“content”是id 包装立柱的容器):

add_theme_support( \'infinite-scroll\', array(
    \'type\' => \'scroll\',
    \'container\' => \'content\',
    \'footer\' => false,
) );
但是,如果我的网站有多栏布局,例如,一栏显示最新帖子,另一栏列出标签中的最新帖子(突出显示),我该怎么办?i、 e.基本上有两个容器。

我尝试了这两个片段(见下文),无论哪种方式,都只对一个列/容器启用了无限滚动。

add_theme_support( \'infinite-scroll\', array(
    \'type\' => \'scroll\',
    \'container\' => \'content\',
    \'footer\' => false,
) );

add_theme_support( \'infinite-scroll\', array(
    \'type\' => \'scroll\',
    \'container\' => \'highlights\',
    \'footer\' => false,
) );
以及

add_theme_support( \'infinite-scroll\', array(
    \'type\' => \'click\',
    \'container\' => array( \'content\', \'highlights\' ),
    \'footer\' => false,
) );
我做错了什么?

NOTE: 如果安装Jetpack需要wordpress。com帐户阻碍了您的发展,请尝试Slim Jetpack. 它甚至可以在本地安装WP,并且不需要WP。com帐户。

2 个回复
最合适的回答,由SO网友:its_me 整理而成

Automatic的快乐工程师Kris Karkoski(WordPress.com)在回复邮件时告诉我,“Jetpack目前不支持多列无限滚动。”

SO网友:david.binda

我已经检查了Slim Jetpack的源代码,如果不重写该插件,就无法完成此任务。

以下是一些提示:

您必须复制“/modules/infinity scroll/infinity”的第539行。php声明:

jQuery.extend( infiniteScroll.settings.scripts, <?php echo json_encode( $scripts ); ?> );
必须复制“/模块/无限滚动/无限”的第475行。js\'初始化无限滚动。(您是否看到变量名称匹配?)

infiniteScroll.scroller = new Scroller( infiniteScroll.settings );
此外,您必须调整模块以接受更多属性,或者至少post_type 属性来确定为每个INIFIMENT循环带来什么post\\u类型——这必须在JS和PHP(ajax函数的回调)中完成。

正如我所说,插件必须重写。

结束

相关推荐