Extension:Title Icon

From mediawiki.org
This page is a translated version of the page Extension:Title Icon and the translation is 100% complete.
Cette extension est maintenue par un membre de Groupe des acteurs de MediaWiki .
Manuel des extensions MediaWiki
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
Composer mediawiki/title-icon
Licence Licence MIT
Téléchargement
Exemple sandbox.semantic-mediawiki.org
  • $wgTitleIcon_EnableIconInPageTitle
  • $wgTitleIcon_EnableIconInSearchTitle
  • $wgTitleIcon_CSSSelector
  • $wgTitleIcon_UseFileNameAsToolTip
  • $wgTitleIcon_TitleIconPropertyName
  • $wgTitleIcon_HideTitleIconPropertyName
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 dossier extensions/.
    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 Note : l'extension ne fonctionnera pas sans cette page de propriété !
  • Configurer si nécessaire.
  • Yes 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.
  • [[Hide Title Icon::category]] : aucune icône de titre spécifiée dans la propriété icônes de titre d'aucune des catégories auxquelles cette page appartient ne sera affichée dans la barre de titre de cette page, ni lorsque cette page figurera dans les résultats de recherche.
  • [[Hide Title Icon::namespace]] : aucune icône de titre spécifiée dans la propriété icônes de titre de la page d'espace de noms ne sera affichée dans la barre de titre de cette page, ni lorsque cette page figurera dans les résultats de recherche.
  • [[Hide Title Icon::page]] : aucune icône de titre spécifiée dans la propriété icônes de titre de cette page ne sera affichée dans la barre de titre de cette page, ni lorsque cette page figurera dans les résultats de recherche.
  • [[Hide Title Icon::all]] : aucune icône de titre ne sera affichée dans la barre de titre de cette page, ni lorsque cette page figurera dans les résultats de recherche.
  • « non défini ou toute valeur différente de celles ci-dessus » : les icônes de titre spécifiées dans la propriété icônes de titre de cette page, quelque soit la catégorie à laquelle la page appartient, et sur la page de l'espace de noms associée à l'espace de noms de la page seront affichées dans la barre de titre de cette page ou lorsque cette page sera listée parmi les résultats de recherche.

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>}}<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>}}<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:&#x1F469;&#x1F3FE;&zwj;&#x1F4BB;|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 page
  • category — masque toutes les icônes de titre définies dans toutes les catégories auxquelles cette page appartient
  • namespace — masque toutes les icônes de titre définies sur la page de l'espace de noms (c'est à dire Projet:<espaceDeNom>) pour cette page
  • all — 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}}

Affichage d'exemples pour l'extension Title Icon

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\":\"&#x1F469;&#x1F3FE;&zwj;&#x1F4BB;\",\"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