Nous venons de terminer une partie passionnante de cette refonte où nous avons pu jeter un tas de balisage brut dans la page des archives vidéo et le remplacer par un nouveau balisage intelligent, propre et généré automatiquement. Mais nous avons encore du travail à faire sur ces pages d'archives. Parce que les archives vont être générées automatiquement en groupes, nous avons besoin de navigation (vraiment pagination) pour accéder aux anciens groupes de screencasts.
Dans le passé, puisque nous écrivions manuellement tout le balisage, nous pouvions faire de cette pagination une partie statique de la page. Cela ne me dérange pas en général, mais ce n'est tout simplement plus possible. Lorsque nous publions un nouveau screencast maintenant, il va pousser un screencast de la fin de la première page sur la deuxième page. Donc, dire quelque chose comme «# 115 - # 95» en code statique ne sera précis que pendant un laps de temps très court.
Tout d'abord, nous obtenons le style correct en utilisant des classes de navigation à barres noires que nous avons utilisées ailleurs (comme sur des pages d'extraits de code individuelles).
Ensuite, nous commençons à faire fonctionner la pagination. Dans WordPress, vous pouvez ajouter à l'URL quelque chose comme "/ page / 2" et il restituera toujours la même page qu'il rendait auparavant, seulement cela vous donnera accès à une variable globale appelée $ paged qui sera définie sur "2 ». Nous pourrions utiliser ce nombre dans notre requête pour ajuster les vidéos que nous diffusons. Mais au lieu de le faire de cette façon, WordPress a un moyen encore plus intelligent de le gérer et cela ajoute 'paged' => $paged
à la requête. Cela explique certaines mathématiques géniales qui se produisent lorsque nous essayons de gérer nous-mêmes la compensation.
Nous ajustons les URL dans notre navigation statique pour refléter ces nouveaux liens de style de pagination. Le problème maintenant est que les nombres dans les liens ne sont plus exacts. Nous essayons d'abord quelque chose de simple comme «5, 4, 3, 2, 1». Mais cela semble un peu boiteux et ennuyeux, ainsi que déroutant car ces chiffres ne correspondent pas aux numéros de pagination réels.
Nous découvrons un ordre étrange de vidéos qui est un peu inquiétant. Nous ajustons la requête en fonction de son ordre, mais certains problèmes subsistent. En fin de compte, nous décidons que nous devrons les classer par date, et quelques ajustements aux dates de publication des screencasts devront être effectués après la mise en ligne du site. Gruntwork, mais bon pour le long terme.
En fin de compte (hors vidéo, je crois), nous finissons par utiliser la pagination de style grec (Alpha, Beta, Gamma) qui fonctionne dans son arbitraire (un peu comme nos trois arbitraires nommant les requêtes des médias). Comme dans, «Zeta» sonne plus tard et il est gris plus foncé, donc la métaphore pour «plus vieux» est complète.