Je travaille avec WHMCS et je remarque que les vues de liste ne fonctionnent pas bien. C'est parce que dans les vues de la liste des clients, j'ai des milliers d'enregistrements à afficher et le DataTables plante. Existe-t-il un moyen de paginer depuis le serveur? J'apprécierai n'importe quelle idée.whmcs pagination côté serveur
0
A
Répondre
0
Voici une idée: nous allons dire que vous consultez la page de la liste des domaines, vous pouvez utiliser crochet ClientAreaPage pour créer une variable pour charger une « paginée » copie de domaines:
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;
});
En clientareadomains.tpl (fichier modèle), vous devez changer de domaine $ à domains2 $:
{foreach key=num item=domain from=$domains2}
Bien sûr, ce n'est pas simple tâche, vous devez gérer le crochet dans la pagination et les fichiers TPL.
Espérons que ça aide.