Właśnie zakończyliśmy ekscytującą część tego przeprojektowania, w której musieliśmy wyrzucić kilka znaczników brutto ze strony archiwów wideo i zastąpić je nowymi, inteligentnymi, czystymi, automatycznie generowanymi znacznikami. Ale mamy więcej do zrobienia na tych stronach archiwów. Ponieważ archiwa będą automatycznie generowane w grupach, potrzebujemy nawigacji (naprawdę paginacji), aby dostać się do starszych grup screencastów.
W przeszłości, ponieważ ręcznie zapisywaliśmy wszystkie znaczniki, mogliśmy uczynić tę paginację statyczną częścią strony. Generalnie mi to nie przeszkadza, ale to już po prostu niemożliwe. Kiedy publikujemy teraz nowy screencast, przesunie on jeden screencast z końca pierwszej strony i na drugą stronę. Zatem powiedzenie czegoś w rodzaju „# 115 - # 95” w kodzie statycznym będzie poprawne tylko przez bardzo krótki czas.
Najpierw poprawiamy stylizację, używając klas nawigacji z czarnym paskiem, których używaliśmy w innych miejscach (np. Na stronach z pojedynczymi fragmentami).
Następnie zaczynamy sprawiać, że paginacja faktycznie działa. W WordPress możesz dodać do adresu URL coś w rodzaju „/ page / 2” i nadal będzie renderować tę samą stronę, którą renderował wcześniej, tylko da ci to dostęp do globalnej zmiennej o nazwie $ paged, która zostanie ustawiona na „2 ”. Moglibyśmy użyć tej liczby w naszym zapytaniu, aby dostosować wyświetlane filmy. Ale zamiast robić to w ten sposób, WordPress ma jeszcze inteligentniejszy sposób radzenia sobie z tym, a to dodaje 'paged' => $paged
do zapytania. To wyjaśnia pewną zabawną matematykę, która ma miejsce, gdy sami próbujemy poradzić sobie z offsetem.
Dostosowujemy adresy URL w naszej statycznej nawigacji, aby odzwierciedlić te nowe linki w stylu paginacji. Problem polega na tym, że liczby w linkach nie są już dokładne. Najpierw spróbujemy czegoś prostego, na przykład „5, 4, 3, 2, 1”. Ale to wydaje się trochę kiepskie i nudne, a także po prostu mylące, ponieważ te liczby nie będą pasować do rzeczywistych numerów paginacji.
Odkrywamy dziwne porządkowanie filmów, które jest trochę niepokojące. Dostosowujemy zapytanie w sposobie, w jaki je zamawia, ale nadal występują pewne problemy. Ostatecznie zdecydowaliśmy, że będziemy musieli uporządkować je według daty, a po uruchomieniu witryny trzeba będzie wprowadzić pewne korekty w datach publikacji screencastów. Gruntwork, ale dobry na dłuższą metę.
Ostatecznie (wydaje mi się, że poza filmem) ostatecznie używamy paginacji w stylu greckim (Alpha, Beta, Gamma), która działa w sposób arbitralny (coś w rodzaju naszych arbitralnych nazw trzech niedźwiedzi w zapytaniach o media). Podobnie jak w przypadku „Zeta” brzmi później i jest ciemniej szare, więc metafora „starszego” jest kompletna.