Extension:Title Icon
Title Icon État de la version : stable |
|
---|---|
Implémentation | Interface utilisateur |
Description | Affiche une icône à gauche du titre de la page en haut de la page et dans les résultats de recherche. Souvent utilisé pour aider les utilisateurs à reconnaître facilement les pages dans une catégorie ou un espace de noms particulier. |
Auteur(s) | Cindy Cicalese (cindy.cicalesediscussion) |
Dernière version | 6.1 (2023-06-23) |
Politique de compatibilité | Versions ponctuelles alignées avec MediaWiki. Le master n'est pas compatible arrière. |
MediaWiki | 1.35+ (version 5.2) et master (version 8.0) |
PHP | 7.3+ |
Modifie la base de données |
Non |
Licence | Licence MIT |
Téléchargement | |
Exemple | sandbox.semantic-mediawiki.org |
|
|
Traduire l’extension Title Icon sur translatewiki.net si elle y est disponible | |
Problèmes | Tâches ouvertes · Signaler un bogue |
L'extension Title Icon place une icône à côté du titre de la page lorsque le titre est affiché en haut de la page et lorsque la page est répertoriée dans les résultats de recherche. L'affichage d'une icône peut aider les utilisateurs à détecter facilement visuellement qu'une page se trouve dans une catégorie ou un espace de noms particulier. Ceci renseigne sur la page elle-même mais aide aussi à choisir la bonne page dans une liste de résultats de recherche.
L'icône est spécifiée dans une fonction de l'analyseur syntaxique par le nom de fichier du fichier d'image téléversé sur le wiki, une icône OOUI, ou une séquence Unicode ou par la valeur d'une propriété Semantic MediaWiki de type Text qui est le nom de fichier d'un fichier d'image téléversé sur le wiki. L'extension recherche les icônes définies sur la page elle-même, dans la page des catégories auxquelles la page appartient, et sur la page de l'espace de noms du Projet correspondant au nom de l'espace de noms de la page (par exemple la page Fruit:Apple aura son icône d'espace de noms spécifiée sur la page Projet:Fruit avec les espaces de noms traduits dans la langue du contenu et l'espace de nom principal désigné par la valeur sur la page MediaWiki:Blanknamespace, parenthèses incluses). Plusieurs icônes sont affichées là où de multiples icônes sont autorisées sur la page (limitées à un maximum de cinq propriétés sémantiques sur la page elle-même et ses catégories). Néanmoins si une icône figure plusieurs fois, elle ne sera affichée qu'une seule fois. Les icônes de fichiers ont pour taille de 36 par 36 pixels, conservant ainsi leur rapport d'aspect original.
Par défaut, Title Icon insère l'icône dans le titre en haut de la page pour tout habillage qui déclare le titre dans un élément HTML d'id firstHeading
, comme le fait l'habillage par défaut Vector.
Ceci peut être modifié pour les autres habillages en utilisant la variable de configuration $wgTitleIcon_CSSSelector
.
Cette approche peut également être utilisée pour que Title Icon apparaîsse ailleurs sur la page en utilisant un <div>
et le choix approprié de $wgTitleIcon_CSSSelector
.
Un grand merci à Bernadette Clemente pour l'idée originale qui a inspiré cette extension et à Keven Ring pour ses premières implémentations.
Installation
- Téléchargez et placez le(s) fichier(s) dans un répertoire appelé
TitleIcon
dans votre dossierextensions/
.
Les développeurs et les contributeurs au code doivent à la place installer l'extension à partir de Git en utilisant:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/TitleIcon - Ajoutez le code suivant à la fin de votre fichier LocalSettings.php :
wfLoadExtension( 'TitleIcon' );
- Créer la page pour la propriété définie dans
$wgTitleIcon_TitleIconPropertyName
(par défaut : 'Property:Title Icon') et assurez-vous que[[Has type::Text]]
.
Note : l'extension ne fonctionnera pas sans cette page de propriété ! - Configurer si nécessaire.
- Fait – Accédez à Special:Version sur votre wiki pour vérifier que l'extension a bien été installée.
Configuration
Drapeau | Par défaut | Description |
---|---|---|
$wgTitleIcon_EnableIconInPageTitle
|
true | Active ou désactive les icônes d'ajout à la barre de titre des pages sur ce wiki. |
$wgTitleIcon_EnableIconInSearchTitle
|
true | Active ou désactive l'ajout d'icône au titre des pages listées dans les résultats de recherche pour ce wiki. |
$wgTitleIcon_CSSSelector
|
"#firstHeading" | Indique le sélecteur CSS à utiliser pour localiser le titre de la page. L'habillage Vector utilise #firstHeading . L'habillage Foreground utilise h2.title s'il date d'avant décembre 2015. Après cette date, le CSSSelector est le même que l'habillage Vector.
|
$wgTitleIcon_UseFileNameAsToolTip
|
true | Ne concerne que le type de fichier des icônes de titre. S'il vaut true , on utilise le nom du fichier d'image sans son extension (c'est à dire jusqu'au premier '.' non inclus, sans tout ce qui suit) comme bulle d'aide lorsque la souris survole l'icône. S'il vaut false , on utilisera à la place le titre de la page où l'icône a été définie dans la propriété de l'icône de titre (soit la page elle-même ou l'une des pages de catégorie, ou la page de l'espace de noms).
|
$wgTitleIcon_TitleIconPropertyName
|
"Title Icon" | nom de la propriété de type Text utilisée pour spécifier le nom de fichier de l'image de l'icône du titre. NOTE: cette propriété doit exister et avoir le type Text. |
$wgTitleIcon_HideTitleIconPropertyName
|
"Hide Title Icon" | Le nom d'une propriété de type Text peut être utilisé pour contrôler l'affichage des icônes de titre pour une page donnée.
|
NOTE : les paramètres $TitleIcon_UseDisplayTitle
et $TitleIcon_DisplayTitlePropertyName
ont été supprimés dans la version 2.0 parce qu'ils faisaient doublon et entraient en conflict avec la fonctionnalité fournie par l'extension Semantic Title.
Fonctions d'analyse
Quatre fonctions de l'analyseur syntaxique ont été introduites dans TitleIcon version 5.0.
titleicon_*
Trois fonctions de l'analyseur syntaxique peuvent être utilisées pour définir les icônes de titre sur les pages du wiki :
{{#titleicon_file:<file page>|<optional page to link>}}
où <file page>
est le nom de la page du fichier contenant l'image (l'espace de noms File:
sera ajouté à <file page>
s'il n'est pas inclus)
{{#titleicon_ooui:<filename>|<optional page to link>}}
où <filename>
est le nom de fichier SVG OOUI sans le chemin, par exemple wikiText.svg
{{#titleicon_unicode:<<translate>Unicode character sequence</translate>>|<<translate>optional page to link</translate>}}
Par exemple, ce qui suit donne une icône de titre de 👩🏾💻 liée à la page TestPage
affichée sur la barre de titre de la page et à côté du titre de la pages dans les recherches :
{{#titleicon_unicode:👩🏾‍💻|TestPage}}
hidetitleicon
{{#hidetitleicon:<translate><'page', 'category', 'namespace', or 'all'></translate>}}
va masquer les icônes de titre sur la page courante.
page
— masque toutes les icônes de titre définies sur cette pagecategory
— masque toutes les icônes de titre définies dans toutes les catégories auxquelles cette page appartientnamespace
— masque toutes les icônes de titre définies sur la page de l'espace de noms (c'est à dire Projet:<espaceDeNom>) pour cette pageall
— masque toutes les icônes de titre sur cette page
Ceci peut être combiné avec l'approche des propriétés sémantiques pour masquer les icônes de titre décrites dessous. La différence principale est que l'approche Semantic MediaWiki fonctionne sur les résultats de la recherche tandis que la fonction de l'analyseur syntaxique ne fonctionne que sur la page elle-même.
Semantic MediaWiki
Bien que cette extension ne nécessite pas que Semantic MediaWiki soit installé, s'il l'est alors il peut être utilisé pour définir les icônes de titre du type de fichier et masquer les icônes de titre sur les pages comme indiqué ci-dessous.
Exemple Category:Title Icon:
{{#set:Title Icon=Event.png}} {{#set:Title Icon=FAQ.png}}
Exemple 1 Title Icon:
{{#set:Title Icon=Report.png}} {{#set:Title Icon=FAQ.png}} [[Category:Title Icon Example]]
Exemple 2 Title Icon:
{{#set:Hide Title Icon=all}} {{#set:Title Icon=Report.png}} {{#set:Title Icon=FAQ.png}} [[Category:Title Icon Example]]
Exemple 3 Title Icon:
{{#set:Hide Title Icon=page}} {{#set:Title Icon=Report.png}} {{#set:Title Icon=FAQ.png}} [[Category:Title Icon Example]]
Exemple 4 Title Icon:
{{#set:Hide Title Icon=category}} {{#set:Title Icon=Report.png}} {{#set:Title Icon=FAQ.png}} [[Category:Title Icon Example]]
Exemple 5 Title Icon:
{{#set:Title Icon=Event.png}} {{DISPLAYTITLE:Events}}
API
Depuis la version 5.1, Title Icon fournit un module de requête à l'API Action.
La requête utilise le nom de la requête (prop=titleicons
) et une liste de titres (par exemple titles=Main%20Page
).
Le résultat est un tableau encodé JSON des icônes de titre des pages demandées.
Par exemple, la requête https://.../api.php?action=query&format=json&prop=titleicons&titles=Main%20Page
pourrait donner quelque chose comme :
{ "batchcomplete": "", "query": { "pages": { "1": { "pageid": 1, "ns": 0, "title": "Main Page", "titleicons": "[{\"source-dbkey\":\"Main_Page\",\"source-namespace\":0,\"icon\":\"👩🏾‍💻\",\"type\":\"unicode\",\"_type_\":\"MediaWiki\\\\Extension\\\\TitleIcon\\\\Icon\"},{\"source-dbkey\":\"Test_Category\",\"source-namespace\":14,\"icon\":\"wikiText.svg\",\"type\":\"ooui\",\"link-dbkey\":\"Network\",\"link-namespace\":-1,\"_type_\":\"MediaWiki\\\\Extension\\\\TitleIcon\\\\Icon\"},{\"source-dbkey\":\"(Main)\",\"source-namespace\":4,\"icon\":\"File:Dove.svg\",\"type\":\"file\",\"_type_\":\"MediaWiki\\\\Extension\\\\TitleIcon\\\\Icon\"}]" } } } }
Cela correspond à une icône Unicode 👩🏾💻 définie sur Main Page,
et à une icône OOUI wikiText.svg
définie sur la page de catégorie Category:Test Category
(puisque dans cet exemple, Main Page
est dans la catégorie Category:Test Category
) qui est liée à la page Special:Network
, et une icône de fichier File:Dove.svg
définie pour l'espace de noms principal (en plaçant une icône titre sur la page Project:(Main)
).
Notes de version
- Version 6.1
- Correction de la désérialisation à partir des propriétés de la page
- Eviter une exception lorsque le titre est mal formaté
- Version 6.0
- Arrêt du support de MediaWiki 1.37 et plus ancien (nécessaire pour les améliorations internes du code)
- Version 5.2
- Suppression de la contrainte où les icônes des fichiers devaient avoir l'espace de noms File: dans le nom de l'icône (bien qu'il s'agisse toujours de fichiers de l'espace de noms File: ; la chaîne File: est dorénavant ajoutée automatiquement si elle est absente)
- Remplacement de l'enregistrement des propriétés de la page d'icône par l'utilisation de l'accroche ParserAfterParse
- Tests améliorés
- Version 5.1
- Ajout de la prise en charge de Title Icons dans l'API Action de MediaWiki
- Version 5.0
- Ajout de la prise en charge des icônes OOUI et des séquences Unicode
- Ajout des fonctions d'analyse syntaxique : titleicon_file, titleicon_ooui, titleicon_unicode, hidetitleicon
- Ajout de la prise en compte de la spécification des icônes de titre par espace de noms
- Continuité de la prise en charge de Semantic MediaWiki
- Icônes définies pour les MediaWiki non sémantiques (fonctions d'analyse syntaxique) accessibles en tant que propriétés de page
- Code refactorisé selon les standards actuels de codage
- Arrêt du support pour MediaWiki 1.34 et plus ancien
- Version 4.1.1
- Remplacer l'utilisation de $wgParser par la facilité d'injection des dépendances
- Version 4.1
- Corrigé pour fonctionner avec Semantic MediaWiki 3.0.0 (constante de classe « TYPE_STRING » non définie)
- Version 4.0
- Correction du rendu des résultats de recherche qui casse la compatibilité avec MediaWiki 1.27 et plus ancien
- Version 3.0
- Suppression de l'utilisation en ligne de JavaScript qui causait problème dans MediaWiki 1.26
- Conversion dans le nouveau style d'enregistrement des l'extensions
- Arrêt du support pour l'ancien style i18n et pour l'enregistrement des extensions
- Renommage des variables de configuration avec le préfixe $wg pour prendre en charge le nouveau format d'enregistrement des extensions
- Version 2.2
$TitleIcon_CSSSelector
ajouté et mise à jour du style de codage
Cette extension est incluse dans les fermes de wikis ou les hôtes suivants et / ou les paquets : Cette liste ne fait pas autorité. Certaines fermes de wikis ou hôtes et / ou paquets peuvent contenir cette extension même s'ils ne sont pas listés ici. Vérifiez toujours cela avec votre ferme de wikis ou votre hôte ou votre paquet avant de confirmer. |