Extension:PageImages
Cette extension est maintenue par l'équipe Reading Web. |
![]() État de la version : stable |
|
---|---|
Implémentation | API , Extension de l'analyseur |
Description | Enregistre les informations concernant les images représentant une page |
Auteur(s) | Max Semenik (MaxSemdiscussion) |
Dernière version | mises à jour continues |
Politique de compatibilité | Versions ponctuelles alignées avec MediaWiki. Le master n'est pas compatible arrière. |
MediaWiki | 1.37+ |
PHP | 7.3.19+ |
Modifie la base de données |
Non |
Licence | WTFPL v2.0 |
Téléchargement | |
|
|
Traduire l’extension PageImages sur translatewiki.net si elle y est disponible | |
Problèmes | Tâches ouvertes · Signaler un bogue |
L'extension PageImages collecte les informations concernant les images utilisées sur une page.
Son but est de retourner une vignette unique, la plus appropriée associée à un article.
Depuis MediaWiki 1.29, PageImages fournit à destination des parties tierces telles que Facebook, les métadonnées à extraire du protocole OpenGraph pour les articles du wiki.
Installation
- Téléchargez et placez le(s) fichiers (s) dans un répertoire appelé
PageImages
dans votre dossierextensions/
. - Ajoutez le code suivant à la fin de votre fichier LocalSettings.php :
wfLoadExtension( 'PageImages' );
- Fait – Accédez à Special:Version sur votre wiki pour vérifier que l'extension a bien été installée.
API
L'extension PageImages fournit les informations d'image en ajoutant une prop=pageimages
à l'API properties pour action=query
.
prop=pageimages (pi)
- This module requires read rights.
- Source: PageImages
- License: WTFPL
Returns information about images on the page, such as thumbnail and presence of photos.
- piprop
Which information to return:
- thumbnail
- URL and dimensions of thumbnail image associated with page, if any.
- original
- URL and original dimensions of image associated with page, if any.
- name
- Image title.
- Values (separate with | or alternative): name, original, thumbnail
- Default: thumbnail|name
- pithumbsize
Maximum width in pixels of thumbnail images.
- Type: integer
- Default: 50
- pilimit
Properties of how many pages to return.
- Type: integer or max
- The value must be between 1 and 50.
- Default: 50
- pilicense
Limit page images to a certain license type
- One of the following values: any, free
- Default: free
- picontinue
When more results are available, use this to continue.
- Type: integer
- pilangcode
Code for the language the image is going to be rendered in if multiple languages are supported
- Get name and 100-pixel thumbnail of an image on the Albert Einstein page.
- api.php?action=query&prop=pageimages&titles=Albert%20Einstein&pithumbsize=100 [open in sandbox]
Réponse
{
// piprop.name (and image exists)
pageimage?: string // Source image filename (basename of original.source).
// piprop.thumbnail (and image exists)
thumbnail?: {
source: string // Thumbnail image URL.
width: number // Thumbnail image width in pixels.
height: number // Thumbnail image height in pixels.
}
// piprop.original (and image exists)
original?: {
source: string // Source image URL.
width: number // Source image width in pixels.
height: number // Source image height in pixels.
}
}
Exemple de requête
Demander l'image de la page pour un article.
Résultat |
---|
{
"query": {
"normalized": [
{
"from": "Lightbox_demo",
"to": "Lightbox demo"
}
],
"pages": {
"162510": {
"pageid": 162510,
"ns": 0,
"title": "Lightbox demo",
"thumbnail": {
"source": "https://upload.wikimedia.org/wikipedia/commons/thumb/e/e9/Crystal_Clear_app_korganizer.png/50px-Crystal_Clear_app_korganizer.png",
"width": 50,
"height": 50
},
"pageimage": "Crystal_Clear_app_korganizer.png"
}
}
}
}
|
Configuration
$wgPageImagesBlacklist est un tableau de sources pour les listes noires d'images. Les images en liste noire ne seront jamais selectionnées comme des images de page. Exemple :
$wgPageImagesDenylist = [
// Page on local wiki
[
'type' => 'db',
'page' => 'MediaWiki:Pageimages-denylist',
'db' => false,
],
// Page on Wikimedia Commons, for other Wikimedia projects using direct DB access
[
'type' => 'db',
'page' => 'MediaWiki:Pageimages-denylist',
'db' => 'commonswiki',
],
// Page on Commons, for third-party sites using web access
[
'type' => 'url',
'url' => 'http://commons.wikimedia.org/w/index.php?title=somepage&action=raw',
],
];
Plus d'une source peut être utilisée au même moment.
La liste noire elle même doit contenir des liens wiki vers les fichiers de la liste noire, le reste du contenu est sans rapport (et peut contenir des liens vers d'autres pages). Par exemple :
* [[:File:First denylisted file.png]]
* [[:File:Second denylisted file.jpeg]]
...
Souvenez-vous que les liens des fichiers qui correspondent aux images devant être ajoutées à la page ne fonctionneront pas (ces fichiers sont en liste noire pour une certaine raison, n'est-ce pas ?), donc n'oubliez pas le :
au début des liens.
$wgPageImagesDenylistExpiry détermine la durée de mise en cache de la liste de blocage, en secondes. Par défaut : 15 * 60 (15 minutes).
$wgPageImagesExpandOpenSearchXml si la valeur est true, PageImages remplacera la détection d'image dans le module API opensearch
avec ses propres résultats plus précis.
Valeur par défaut : false
.
$wgPageImagesNamespaces est un tableau d'espaces de noms sur lequel PageImages sera activé. Par défaut: NS_MAIN.
After the change, you'll have to run refreshLinks.php to generate the Page image information for those namespaces (hopefully, you can use the --namespace parameter to process only pages on the affected namespaces, since that script is very resource-intensive)
$wgPageImagesOpenGraphFallbackImage is a URL to fallback image that will be shown when there is no image on a page.
Default:
false
Fonctionnement
Lorsqu'une page est enregistrée avec une image locale, parser exécute les hooks ParserMakeImageParams
et LinksUpdate
.
L'extension PageImages leur répond (ainsi qu'à d'autres accroches) et insère une nouvelle propriété pour la page dans la table page_props .
Le nom de la propriété est page_image_free
et sa valeur est le nom de l'image.
L'extension ne range que le nom de l'image sélectionnée. D'autres fonctionnalités peuvent afficher l'image, telles que les informations de page, les cartes de survol, et la recherche Mobile en cours de frappe.
Choix de l'images
Comment vérifier à quelle page une image donnée est associée ?
Les images de page seront listées sur la page ?action=info
.
Comment se fait la sélection des images ?
Toutes les images de la page sont collectées et une évaluation est calculée pour chacune d'elle. L'image qui a le plus grand score est choisie pour être l'image de la page. Si le wiki est configuré de sorte à ce que les images contiennent des méta données spécifiant qu'elle ne sont pas libres de droits, l'image avec le meilleur score et qui est également libre de droits est aussi enregistrée. Si aucune image convenable est trouvée, ou si toutes les images donnent un mauvais score (par exemple leur note est négative), la page n'aura aucune image.
Si $wgPageImagesLeadSectionOnly est vrai, seules les images dans la section de tête seront prises en compte.
Actuellement, la valeur est à true
seulement pour les projets Wikipedia; tous les autres projets peuvent obtenir les images d'ailleurs que dans la section principale.
Comment les images sont-elles évaluées ?
La meilleure image de page possible sur les wikis Wikimedia est l'une des quatre premières images d'article qui ont largeur/hauteur entre 400 et 600 pixels et hauteur/largeur qui est le double en valeur de l'autre dimension.
- L'algorithme est configurable.
- Les notes sont calculées comme étant une combinaison de :
- Largeurs d'image définies dans
$wgPageImagesScores['width']
- Dans les wikis Wikimedia, les images plus petites que 119 pixels sont pondérées très négativement. Les images de largeur 400 à 600 pixels sont favorites, avec une préférence pour la première valeur.
- Les images à l'intérieur des galeries sont notées séparément à l'aide de 1 $
- Dans les wikis Wikimedia, les galleries d'images qui sont plus petites que 100 ne sont pas prises en compte.
- Position dans le document est également considéré comme défini dans
$wgPageImagesScores['position']
- Sur les wikis Wikimedia, seules les quatres premières images qui apparaissent dans le document sont prises en compte.
- Le rapport largeur/hauteur de l'image est considéré comme
$wgPageImagesScores['ratio']
- On Wikimedia wikis a ratio of 0.4 to 3.1 is allowed, with 0.6 to 2.1 preferred. Toutes les images dont le ratio est inférieur à 0,5 seront évaluées négativement et ignorées.
- Largeurs d'image définies dans
Soyez plus technique s'il vous plait...
Pageimages remplit les images chaque fois que le hook LinksUpdate s'exécute.
Dans PageImages, ceci est exécuté dans LinksUpdateHookHandler::doLinksUpdate
Comment exclure certaines images de page ?
Yes!
Oui ! Il y a une liste noire sur chaque wiki que les administrateurs peuvent modifier, à MediaWiki:Pageimages-denylist (example). Toute les images qui apparaissent ici ne seront pas des images de page pour aucun article.
For specific pages, add |class=notpageimage
to each image you want to exclude. For example, [[File:Example.png|class=notpageimage]]
.
More details are at phab:T301588.
Comment voir l'image d'une page ?
En utilisant le lien $Toolboxlink dans la barre latérale (ou en ajoutant ?action=info
à l'URL) vous pourrez voir le choix d'image actuel.
Comment supprimer une mauvaise image ?
« pageimage » change uniquement lorsqu'un lien vers un article est modifié. En cas d'urgence, vous pouvez ajouter/supprimer les liens de la page, ou revenir en arrière si nécessaire. Purger ne fonctionnera pas. Pour des urgences plus importantes veuillez remplir un ticket sur Phabricator.
Pourquoi l'image de ma page est une boîte vide ?
Ceci a plutôt rapport au contenu vidéo de votre article. Si un fichier vidéo commence par un écran blanc, celui-ci deviendra la vignette par défaut et s'il est utilisé comme une image de page, il deviendra l'image de la page. Nous travaillons actuellement à la correction de ce problème, ce qui vous permettra de changer la vignette par défaut d'une vidéo. Voir : phab:T92457 et phab:T22647 pour davantage d'informations.
Upgrade notes
- Since MediaWiki 1.37,
$wgPageImagesBlacklist
and$wgPageImagesBlacklistExpiry
have been renamed to$wgPageImagesDenylist
and$wgPageImagesDenylistExpiry
respectively. There's no backwards compatibility code added to accept the old variable names, which means you should change the variable names during the upgrade, or define both variables in advance in preparation for the upgrade. - Since MediaWiki 1.37, the default page value for
$wgPageImagesDenylist
has been changed fromMediaWiki:Pageimages-blacklist
toMediaWiki:Pageimages-denylist
. If you've added content toMediaWiki:Pageimages-blacklist
on your wiki, you should rename it during the upgrade. If you want to prepare in advance for the upgrade, you can rename the page to the new name, and also set$wgPageImagesBlacklist
(the old variable name) to the new page name, and the default value will be used when upgrading, which should match your previous change.
Voir aussi
Cette extension est utilisée par au moins un des projets Wikimédia. Cela signifie probablement que l’extension est assez stable et fonctionnelle pour être utilisée sur des sites à fort trafic. Recherchez le nom de cette extension dans le CommonSettings.php de Wikimédia et dans le fichier de configuration InitialiseSettings.php pour situer les endroits où elle est installée. Une liste complète des extensions installées sur un Wiki donné peut être visualisée sur la page Special:Version de ce wiki. |
This extension is included in the following packages and/or wiki farms: |