Cet article s’adresse plutôt aux développeurs de thèmes WordPress, même si le code en lui-même est assez simple. Parfois, lors de la création d’un thème, on peut vouloir utiliser plusieurs boucles différentes, notamment en page d’accueil. Un exemple simple : une boucle avec les articles récents, une boucle avec des articles au hasard.
Afin d’éviter qu’un (ou plusieurs) article, ou un contenu personnalisé quelconque, se retrouve dans les deux affichages de ces boucles en même temps, il suffit de quelques lignes de code.
L’astuce pour éviter cet inconvénient est de simplement stocker dans un tableau les ID des contenus affichés dans la première boucle, puis vérifier lors de la création de la seconde boucle que les contenus que l’on récupère ne se trouvent pas dans ce tableau. Un peu de code valant mieux qu’un long discours, voyons tout de suite comment faire :
Et la vérification dans la seconde boucle, une fois que nous avons stocké toutes les ID dans le tableau $do_not_duplicate
L’instruction continue en PHP permet de ne pas prendre en compte l’itération courante et de passer directement à la suivante dans une boucle.