All services required by LinkBatch are now injected by the LinkBatchFactory. The constructor for LinkBatch has been soft-deprecated, but the required services are still optional. Bug: T239855 Depends-On: If49cbb730d4ac48586b891908cf24601efbc5d6a Change-Id: I93d931ab60305ad49a6e419f8269c77791a3938d
25 lines
1 KiB
Markdown
25 lines
1 KiB
Markdown
The LinkCache class maintains a list of article titles and the information about
|
|
whether or not the article exists in the database. This is used to mark up links
|
|
when displaying a page. If the same link appears more than once on any page,
|
|
then it only has to be looked up once. In most cases, link lookups are done in
|
|
batches with the LinkBatch class, or the equivalent in Parser::replaceLinkHolders(),
|
|
so the link cache is mostly useful for short snippets of parsed text (such as
|
|
the site notice), and for links in the navigation areas of the skin.
|
|
|
|
The link cache was formerly used to track links used in a document for the
|
|
purposes of updating the link tables. This application is now deprecated.
|
|
|
|
To create a batch, you can use the following code:
|
|
|
|
~~~{.php}
|
|
$pages = [ 'Main Page', 'Project:Help', /* ... */ ];
|
|
$titles = [];
|
|
|
|
foreach( $pages as $page ){
|
|
$titles[] = Title::newFromText( $page );
|
|
}
|
|
|
|
$linkBatchFactory = MediaWikiServices::getInstance()->getLinkBatchFactory();
|
|
$batch = $linkBatchFactory->newLinkBatch( $titles );
|
|
$batch->execute();
|
|
~~~
|