我正在使用WHMCS,我注意到列表视图效果不佳。 那是因为在clientarea的列表视图中,我有数千条记录要显示并且DataTables正在崩溃。 有没有办法从服务器端分页?我会很感激。
答案 0 :(得分:0)
这是一个想法:让我们说你正在查看域列表页面,你可以使用ClientAreaPage钩子创建一个变量来加载域的“分页”副本:
add_hook( 'ClientAreaPage', 1, function( $vars )
{
$myVars = array();
if (App::getCurrentFilename() == 'clientarea' && isset($_GET['action']) && $_GET['action'] == 'domains') {
$domains2 = array();
foreach($vars['domains'] as $k => $domain) {
if ($k < 3) {//your code to handle pagination
$domains2[] = $domain;
}
}
$myVars['domains2'] = $domains2;
$myVars['currentpage'] = 1;
}
return $myVars;
});
在clientareadomains.tpl(模板文件)中,您需要将$域更改为$ domains2:
{foreach key=num item=domain from=$domains2}
当然,这不是一项简单的任务,你需要在钩子和tpl文件中处理分页。
希望它有所帮助。