Manual:LinkBatch.php/fr

Description
Quand MédiaWiki génère une page, il doit passer par tous les liens dans la page pour vérifier si ils existent. S'ils n'existent pas, une classe "nouveau" est ajoutée à la balise d'ancrage pour qu'il soit affiché comme un lien rouge. Si la page comporte beaucoup de liens, cela peut devenir un processus coûteux qui ralentit le rendu de la page. Pour éliminer ce problème, la classe a été créée. Un objet LinkCache contient l'information en cache à propos de toutes les pages ayant un lien à une source (d'habitude une page). La génération du LinkCache lui-même reste cependant coûteuse, si chaque page liée est testée séparément. Pour contourner ce problème, la classe LinkBatch peut être utilisée. The LinkBatch class allows all the pages to be added to a batch query so that only one call to the database is necessary.

Utilisation
To use LinkBatch for your page, first instantiate a new LinkBatch object:

This assumes that you use, and that the LinkBatchFactory was injected into the class.

Then, you should register yourself as the caller of the LinkBatch so that the database query can be traced back to you:

Then add each linked page to the batch. There are two ways to do this: with the linked page's object, or with the linked page's namespace and title string.

Using LinkTarget object:

Using namespace and title string:

Once all the linked pages are added to the batch, use the execute function to generate and store the LinkCache:

If you know beforehand that the links you are creating definitely exist, you can prevent them from being checked for existence by using the LinkRenderer::makeKnownLink function. This eliminates the need for the LinkCache.