+30.2152151245-8 abuse@cms39.com

Η cms39_paginate() κάνει όλη τη σελιδοποίηση σε μία κλήση: μετράει, φέρνει τα στοιχεία της τρέχουσας σελίδας και φτιάχνει το HTML. Από κάτω χρησιμοποιεί το Pagerfanta.

$r = cms39_paginate([
    'sql'    => 'SELECT mod_blog_cat_id FROM cms39_posts WHERE mod_blog_cat_type = ? AND mod_blog_cat_status = 1 ORDER BY mod_blog_cat_date DESC',
    'params' => ['post'],
], 12, ['page' => the_id(), 'window' => 5]);

foreach ($r['items'] as $row) {
    $post = PageDetail($row['mod_blog_cat_id']);
}
echo $r['html'];      // ‹ 1 2 3 4 5 ›

Πηγές

  • SQL με παραμέτρους (το πλήθος βγαίνει μόνο του, σωστά και με GROUP BY)
  • Doctrine QueryBuilder
  • δύο συναρτήσεις: ['count' => fn() => …, 'items' => fn($offset, $length) => …]
  • array που έχετε ήδη

Επιστρέφει items, html, total, page, last. Σελίδα εκτός ορίων (?page=999) δείχνει την τελευταία· μη αριθμός δείχνει την πρώτη. Το HTML έχει τις ίδιες κλάσεις με όλο το site, ή 'view' => 'bootstrap5'.

για περισσότερες πληροφορίες επικοινωνήστε μαζί μας
ΗΛΕΚΤΡΟΝΙΚΑ ή τηλεφωνικά στο +30.2152151245-8