Im Folgenden finden Sie eine Methode, um Ihnen eine Sekundärentwicklung der benutzerdefinierten Paging-Funktion in PHPCMS V9 vorzustellen.
Die Methode ist wie folgt:
Öffnen Sie zuerst die Datei phpcmslibsfunctionsglobal.func.php, suchen Sie die Paging-Funktion, kopieren Sie sie, fügen Sie sie unter der Standard-Paging-Funktion ein, benennen Sie sie um, zum Beispiel habe ich sie wz_pages genannt, und Speichern Sie es.
Öffnen Sie phpcms/libs/classes/template_cache.class.php und suchen Sie Zeile 207:
$ str .= '$pages = seiten($'.$op.'_total, $page, $pagesize, $urlrule);'
Unterhalb dieser Zeile hinzufügen:
$str .= '$ wz_pages = wz_pages($'.$op.'_total, $page, $pagesize, $urlrule);';
Speichern. Wenn Sie schließlich Ihre benutzerdefinierte Paging-Funktion verwenden möchten, verwenden Sie einfach {$wz_pages} direkt in der Vorlage. Wenn Sie den Stil in Zukunft ändern möchten, ändern Sie ihn direkt:
phpcmslibsfunctionsglobal.func.php Die wz_pages-Funktion in Diese Datei ist in Ordnung, sie hat keinen Einfluss auf den Hintergrund.
Nachträgliche Optimierung:
Während der Nutzung wurde festgestellt, dass SQL-Paging nicht normal verwendet werden kann, daher müssen Sie den folgenden Code hinzufügen:
Öffnen Sie phpcms/libs/classes/template_cache. class.php, Suchen Sie Zeile 178:
$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$pages=pages($s[\'count\'], $page, $pagesize, $urlrule);';
und fügen Sie darunter hinzu:
$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$wz_pages=wz_pages($s[\'count\'], $page, $pagesize, $urlrule);';
Auf diese Weise ist auch SQL-Paging normal.
Eine weitere Folgeoptimierung:
Ein Freund erwähnte, dass die obige Methode nicht für die Paginierung der Sammlungsliste im Mitgliedercenter verwendet werden kann.
Da die Paging-Funktion der Sammlungsliste direkt in anderen Dateien festgelegt ist, ist es nicht möglich, die -Datei durch Ändern der Vorlage zwischenzuspeichern. Die Änderungsmethode ist unten angegeben:
Siehe die spezifischen Änderungen unten:
phpcmslibsclassesmodel.class.php Zeile 61
$this->pages = pages($this->number, $page, $pagesize, $urlrule, $array, $setpages);
Ändern Sie die obige Zeile in:
$this->pages = wz_pages($this->number, $page, $pagesize, $urlrule, $array, $setpages);
( {$ in den Vorlagenseiten} muss nicht in {$wz_pages} geändert werden)
Das Obige ist die erste Methode.
Aber wenn dies der Fall ist, kann auch der Hintergrund davon betroffen sein. Es ist die gleiche Datei wie oben Zeile 61. Fügen Sie direkt unter Zeile 61 hinzu:
$this->wz_pages= wz_pages($this->number, $page, $pagesize, $urlrule, $array, $setpages);
Gehen Sie dann zu: phpcmsmodulesmemberindex.php Zeile 718 und ändern Sie die folgende Zeile
$pages = $this->favorite_db->pages;
wird geändert in:
$wz_pages = $this->favorite_db->wz_pages;
{$pages} in der Vorlage sollte in {$wz_pages} geändert werden. Dies dient der Sammlungsliste als Beispiel, und die anderen sind ähnlich.
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung von Methodenbeispielen für die Sekundärentwicklung benutzerdefinierter Paging-Funktionen in PHPCMS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!