Extension:StructuredDiscussions

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:StructuredDiscussions and the translation is 98% complete.
Other languages:
English • ‎Türkçe • ‎español • ‎français • ‎magyar • ‎中文 • ‎日本語
Manuel des extensions MediaWiki
OOjs UI icon advanced.svg
StructuredDiscussions
État de la version : stable
StructuredDiscussions generic screenshot.png
Implémentation Action de page
Description Fournit un système de discussions et de collaboration pour les pages de discussion.
Auteur(s) Brandon Harris, Erik Bernhardson, Matthias Mullie, Andrew Garrett, Benny Situ, Shahyar Ghobadpour, Matthew Flaschen, Roan Kattouw, Moriel Schottlender, Stephane Bisson, Kunal Mehta
Dernière version Continuous updates
Politique de compatibilité branches de version
MediaWiki 1.34+
PHP 5.4+
Modifie la base de données Oui
Licence Licence publique générale GNU v2.0 ou supérieur
Téléchargement
Exemple Talk:Structured Discussions
  • $wgFlowSearchConnectionAttempts
  • $wgFlowAbuseFilterEmergencyDisableAge
  • $wgFlowSearchBannedPlugins
  • $wgFlowEnableOptInBetaFeature
  • $wgFlowHelpPage
  • $wgFlowCluster
  • $wgFlowAbuseFilterEmergencyDisableThreshold
  • $wgFlowSearchShardCount
  • $wgFlowCacheTime
  • $wgFlowDefaultWikiDb
  • $wgFlowServerCompileTemplates
  • $wgFlowContentFormat
  • $wgFlowSearchServers
  • $wgFlowCoreActionWhitelist
  • $wgFlowCacheVersion
  • $wgFlowSearchMaintenanceTimeout
  • $wgFlowSearchReplicas
  • $wgFlowSearchCacheWarmers
  • $wgFlowExternalStore
  • $wgFlowMaxMentionCount
  • $wgFlowSearchMaxShardsPerNode
  • $wgFlowSearchEnabled
  • $wgFlowReadOnly
  • $wgFlowAjaxTimeout
  • $wgFlowSearchRefreshInterval
  • $wgFlowUseMemcache
  • $wgFlowDefaultLimit
  • $wgFlowSearchIndexAllocation
  • $wgFlowSearchMergeSettings
  • $wgFlowAbuseFilterEmergencyDisableCount
  • $wgFlowParsoidTimeout
  • $wgFlowSearchOptimizeIndexForExperimentalHighlighter
  • $wgFlowEditorList
  • $wgFlowParsoidForwardCookies
  • $wgFlowMaxThreadingDepth
  • $wgFlowParsoidHTTPProxy
  • $wgFlowParsoidPrefix
  • $wgFlowMaxLimit
  • $wgFlowAbuseFilterGroup
  • $wgFlowParsoidURL
  • flow-hide
  • flow-lock
  • flow-delete
  • flow-suppress
  • flow-edit-post
  • flow-create-board
Traduisez l’extension StructuredDiscussions
Vérifiez la matrice des utilisations et des versions.
Problèmes Tâches ouvertes · Signalez un bogue

L'extension StructuredDiscussions fournit un système de forum et de collaboration pour les pages de discussion. Cette page décrit comment installer et administrer les discussions structurées; si vous cherchez un guide sur la manière de les utiliser, voyez plutôt Aide:Discussions structurées . Vous pouvez essayer les discussions structurées par vous-même sur la page de discussion du bac à sable (sandbox).

Cette extension était connue auparavant comme Flow, et ce nom à plusieurs endroits (comme le dépôt Git) la représente encore.

L'extension StructuredDiscussions a été développée par l'équipe Collaboration de la Fondation Wikimedia. Il est encore maintenu pour la correction de bogues, mais il n'y a pas eu d'autres développements substantiels sur l'extension depuis 2015, qu'un renommage en StructuredDiscussions en septembre 2017. Le développemnt peut éventuellement reprendre à l'avenir. Pour obtenir davantage d'informations concernant l'état du développement de cette extension ainsi qu'un aperçu sur son architecture, voir Structured Discussions.

Installation

Attention! Attention : Notez que StructuredDiscussions n'est pas compatible avec SQLite.
  • Si vous utilisez Vagrant , installez avec vagrant roles enable flow --provision
Installation manuelle
  • Assurez-vous que toutes les dépendances nécessaires sont résolues et configurées.
  • Téléchargez et placez le(s) fichiers (s) dans un répertoire appelé Flow dans votre dossier extensions/.
  • Ajoutez le code suivant à la fin de votre fichier LocalSettings.php :
    wfLoadExtension( 'Flow' );
    
  • Exécutez le script de mise à jour qui va créer automatiquement les tables de base de données dont cette extension a besoin.
  • Yes Fait – Accédez à Special:Version sur votre wiki pour vérifier que l'extension a bien été installée.
Veuillez lire la section de recherche de fautes dans le cas où vous rencontreriez les problèmes évoqués.

Après l'installation

Vous devez exécuter update.php en tant qu'utilisateur du serveur web (dépend de votre configuration, mais peut être par exemple www-data). Sinon, il peut laisser des fichiers temporaires /tmp/mw-UIDGeneratorUUID-UID-xx que MediaWiki peut ne pas pouvoir ouvrir (phab:T55791). Si vous avez une erreur de priviliège Permission denied lors de la première visite d'un tableau Flow, il vous faut supprimer ces fichiers. Aussi, update.php va créer {{FlowMention}} pour prendre en charge la fonctionnalité des mentions de Flow dans l'Editeur Visuel (soit '@' soit un menu de barre d'outils fournira une interface d'autocomplétion pour les mentions).

Vous devez aussi exécuter la commande composer update --no-dev à partir de la ligne de commande, sur le dossier où MediaWiki est installé, même si vous ne téléchargez pas à partir de Git.

Assurez-vous de bien suivre les instructions complètes pour activer ou désactiver StructuredDiscussions, y compris les scripts mentionnés ici.

Dépendances

nécessaire
  • Extension:Echo/fr - pour les notifications (c'est à dire les réponses à vos billets)
  • Il est nécessaire d'avoir un cache d'objets et d'utiliser memcached pour cela. Actuellement, il est possible que vous ayez des problèmes avec Redis.
  • Extension:ParserFunctions - pour les modèles qui sont installées automatiquement (par exemple #time)
  • $wgContentHandlerUseDB = true Nécessaire pour Special:EnableStructuredDiscussions et pour éviter la corruption si vous changez le modèle de contenu des espaces de noms (pour ou contre les discussions structurées) s'il existe déjà des pages dans cet espace de noms.
très recommandé
  • Parsoid pour l'option permettant d'entregistrer les billets en tant que ($wgFlowContentFormat = 'html';) HTML pour améliorer les performances. Ceci est la manière dont les wikis de la Fondation WikiMedia sont configurés, et par là, c'est la configuration la plus testée. Si vous utilisez MediaWiki-Vagrant, l'activation StructuredDiscussions autorise Parsoid et fixe le format à 'html'.
facultatif

Vérifier l'installation

Ouvrez une des pages que vous avez activées pour les discussions structurées (voir #Configuration) et essayez d'ajouter un article et de modifier son titre.

Mise à jour

La variable $wgFlowOccupyPages, qui énumère les tableaux StructuredDiscussions, a été supprimée conformément à phab:T105574. Avant de mettre à jour vers la version 1.26 ou ultérieur, exécutez les scripts de maintenance :

php maintenance/populateContentModel.php --ns=all --table=page
php extensions/Flow/maintenance/FlowUpdateRevContentModelFromOccupyPages.php

Le premier script a fait partie du noyau MediaWiki jusqu'à la version 1.34. Depuis la 1.35, ceci n'est plus nécessaire.

Configuration

Voici quelques paramètres à définir dans LocalSettings.php.

Activer ou désactiver StructuredDiscussions

Pour activer ou désactiver les discussions structurées pour un espace de noms donné dans MediaWiki avant la 1.35, exécutez d'abord populateContentModel.php sur les espaces de noms concernés (ou vous pouvez le faire sur all). Depuis la 1.35 , ceci n'est plus nécessaire. Par exemple si vous voulez l'activer ou le désactiver sur NS_TALK (1) et NS_USER_TALK (3) comme indiqué dans la configuration PHP ci-dessous :

mwscript populateContentModel.php --wiki=somewiki --ns=1 --table=revision
mwscript populateContentModel.php --wiki=somewiki --ns=1 --table=archive
mwscript populateContentModel.php --wiki=somewiki --ns=1 --table=page

mwscript populateContentModel.php --wiki=somewiki --ns=3 --table=revision
mwscript populateContentModel.php --wiki=somewiki --ns=3 --table=archive
mwscript populateContentModel.php --wiki=somewiki --ns=3 --table=page

Si mwscript n'est pas configuré, remplacez mwscript populateContentModel.php par php maintenance/populateContentModel.php

Après ce qui précède, initialisez $wgNamespaceContentModels [namespace] pour les espaces de noms particuliers. Par exemple :

  // These lines enable StructuredDiscussions on the "Talk" and "User talk" namespaces
  // All the NS_* constants here: https://www.mediawiki.org/wiki/Manual:Namespace_constants
  
  $wgNamespaceContentModels[NS_TALK] = 'flow-board';
  $wgNamespaceContentModels[NS_USER_TALK] = 'flow-board';

Ne réassignez pas la variable globale ($wgNamespaceContentModels =).

Pour l'activer sur la même page, utilisez Special:EnableStructuredDiscussions. Ceci nécessite d'avoir les droits flow-create-board qui peuvent être attribués à tout groupe (voir Modifier les privilèges de groupe).

  $wgGroupPermissions['somegroup']['flow-create-board'] = true;

Voir Extension:StructuredDiscussions/Turning off all StructuredDiscussions pour savoir comment désactiver toutes les pages StructuredDiscussions sur votre wiki.

Configuration Parsoid

StructuredDiscussions utilise le service Virtual REST pour contacter un service Parsoid ou RESTBase. Si votre wiki charge l'extension VisualEditor , alors il se peut que cela soit probablement déjà configuré. Cherchez ce qui suit dans votre LocalSettings.php :

$wgVirtualRestConfig['modules']['parsoid'] = array(
  // URL to the Parsoid instance
  // Use port 8142 if you use the Debian package
  'url' => 'http://localhost:8000',
  // Parsoid "domain", see below (optional)
  'domain' => 'localhost',
  // Parsoid "prefix", see below (optional)
  'prefix' => 'localhost',
);

Un unique serveur Parsoid peut gérer plusieurs wikis. Le paramètre domain de Parsoid identifie la configurations de votre wiki pour Parsoid. Par défaut il vaut le nom de l'hôte appelé par $wgCanonicalServer, mais vous pouvez utiliser une chaîne de caractères quelconque. Les versions plus anciennes de Parsoid utilisaient également un préfixe unique pour identifier le serveur; vous devriez lister cela ici également.

Parsoid doit être configuré pour trouver, en utilisant un ligne dans localsettings.js de Parsoid telle que :

parsoidConfig.setMwApi({ uri: 'http://path/to/my/wiki/api.php', domain: 'localhost', prefix: 'localhost' });

De nouveau, la propriété domain est faculatative pour configurer Parsoid; quand il n'est pas spécifié, la valeur par défaut est le nom de l'hôte utilisé dans la propriété uri . La propriété préfixe peut également être omise à moins que vous n'exécutiez une ancienne version de Parsoid. Assurer vous que le domain et prefix listés dans les résultats localsettings.js de Parsoid, correspondent à ce qu'il y a dans le LocalSettings.php de votre wiki.

Voir Parsoid/Setup#Configuration pour plus de détails.

« Nombre maximum d'imbrications de 100 fonctions atteint, abort »

Si vous obtenez cette erreur, vous devez initialiser xdebug.max_nesting_level = 200, probablement dans /etc/php5/apache2/php.ini.[1]

« Récupération d'exception : CAS non implémenté dans Xyz »

StructuredDiscussions invoque $cache->cas() et quelques implémentations du cache incluant CACHE_ACCEL (APCBagOStuff) n'implémentez pas CAS. Vous devrez probablement utiliser un cache différent, par exemple installer memcached et définir $wgMainCacheType = CACHE_MEMCACHED;.

Droits

Les utilisateurs doivent avoir les droits edit sur le noyau pour réaliser des opérations d'écriture dans StructuredDiscussions. Beaucoup de wiki n'attribuent ces droits que pour le groupe 'user' (connectés).

StructuredDiscussions définit plusieurs actions telles que edit-post et delete-topic (voir la liste dans FlowActions.php). Les droits varient en fonction du billet, s'il est à vous et s'il a été modéré. Par exemple, les utilisateurs peuvent modifier leurs propres billets par défaut, mais uniquement les utilisatuers du groupe 'sysop' ont les droit flow-edit-post qui autorise à modifier les billets des autres utilisateurs. Vous pouvez réécraser les droits et les groupes auquels ils ont été affectés pour chaque action Flow; voir les Droits utilisateur pour un aperçu des autorisations.

Migrer les pages existantes

Pour migrer une page existante unique, utilisez Special:EnableStructuredDiscussions. Cela prendra en charge l'archivage des pages uniques (puis activera automatiquement StructuredDiscussions).

Le script maintenance/convertNamespaceFromWikitext.php automatise cette conversion d'espace de noms ainsi que l'archivage, voir Flow/Converting talk pages. C'est un peu particulier à la Fondation WikiMedia, donc évaluez son opération et sauvegardez votre base de données avant d'exécuter. Un autre script maintenance/convertAllLqtPages.php convertit les pages LiquidThreads avec leurs fils de discussion en tableaux Flow avec les titres, voir Flow/Converting LiquidThreads. Les mises en garde similaires s'appliquent.

Flow ajoute un espace de noms Topic:, voir Extension default namespaces#flow. Vous pouvez aller sur Special:PrefixIndex/Topic: pour voir s'il y a des pages existantes en conflit avec cela; si c'est la cas, exécutez le script de maintenance maintenance/namespaceDupes.php.

Configuration

Paramètres de configuration de Flow.php
Paramètre Valeur par défaut Commentaire
$wgFlowHelpPage //www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Flow URL pour avoir davantage d'informations à propos du système de notification de Flow
$wgFlowCluster false $wgFlowCluster définit le serveur externe de base de données à utiliser.

S'il vaut false, la base de données courante (wfGetDB) sera utilisée pour y lire/écrire les données. Si les données de StructuredDiscussions sont supposées être stockées dans une base de données externe, initialisez la valeur de cette variable avec la clé de $wgExternalServers représentant cette connexion externe.

$wgFlowDefaultWikiDb false Base de données à utiliser pour les métadonnées de StructuredDiscussions. Fixez la valeur à false pour utiliser la base de données du wiki.

Un nombre quelconque de wikis peuvent et doivent pouvoir partager la même base de données StructuredDiscussions.

$wgFlowExternalStore false Utilisé pour le stockage du contenu. false pour stocker le contenu dans la base de données StructuredDiscussions. Sinon une grappe ou une liste de grappes à utiliser avec ExternalStore. Les grappes fournies doivent exister en tant que $wgExternalStores.

Les grappes multiples sont nécessaires pour HA, pour que les insertions puisssent continuer si l'un des maîtres est hors service pour maintenance ou autres raisons.

$wgFlowExternalStore = array( 'DB://cluster24', 'DB://cluster25' );

$wgFlowContentFormat html Par défaut, StructuredDiscussions va stocker le contenu en HTML. Néanmoins, ceci nécessite que Parsoid soit configuré et activé parce qu'il faudra convertir le HTML en wikicode pour l'éditeur de base. (notez bien que pour utiliser l'Editeur Visuel vous devez absolument avoir Parsoid, donc si vous ne prenez pas en charge cet éditeur, vous pouvez fixer cela à HTML directement)

Si $wgFlowParsoidURL est nul, $wgFlowContentFormat sera forcé à 'wikitext'.

Le format 'wikitext' aura tendance à devenir obsolète.

$wgFlowParsoidURL null
Avertissement Avertissement : obsolète, remplacez par $wgVirtualRestConfig['modules']['parsoid']['url'].

Configuration Parsoid de StructuredDiscussions

Veuillez noter que cette configuration est à part de la configuration de Parsoid pour l'Editeur Visuel.

$wgFlowParsoidPrefix null
Avertissement Avertissement : obsolète, remplacez par $wgVirtualRestConfig['modules']['parsoid']['prefix'].

Configuration Parsoid de Flow

Veuillez noter que cette configuration est à part de la configuration de Parsoid pour l'Editeur Visuel.

$wgFlowParsoidTimeout null
Avertissement Avertissement : obsolète, remplacez par $wgVirtualRestConfig['modules']['parsoid']['timeout'].

Configuration Parsoid de Flow

Veuillez noter que cette configuration est à part de la configuration de Parsoid pour l'Editeur Visuel.

$wgFlowParsoidForwardCookies false
Avertissement Avertissement : obsolète, remplacez par $wgVirtualRestConfig['modules']['parsoid']['forwardCookies'].

Retransmettre le cookie de l'utilisateur : les entêtes vers Parsoid. Nécessaire aux wikis privés (il faut être connecté pour pouvoir lire).

Si le wiki n'est pas privé (c'est à dire que $wgGroupPermissions['*']['read'] vaut true) ce paramètre de configuration sera ignoré.

Cette fonctionnalité nécessite que la session avec le dépôt soit non verrouillable. Le dépôt par défaut de la session ne fonctionnera pas et provoquera des blocages si on essaie d'utiliser cette fonctionnalité. Si vous êtes confronté à des situations de blocage, activez $wgSessionsInObjectCache.

Attention: n'activez ceci UNIQUEMENT sur les wikis privés et SEULEMENT si vous comprenez ce que cela implique au niveau SECURITE quand vous envoyez les entêtes de cookies à Parsoid avec HTTP. Par mesure de sécurité, il est fortement recommandé que $wgVirtualRestConfig['modules']['parsoid']['forwardCookies'] pointe sur Localhost si ce paramètre est activé.

$wgFlowDefaultWorkflow discussion Utiliser ce flux lorsque l'on visite le StructuredDiscussions d'un article mais sans spécifier quel type de flux de travail doit être affiché
$wgFlowDefaultLimit 10 Limits for paging
$wgFlowMaxLimit 100 Limits for paging
$wgFlowMaxMentionCount 100 Nombre maximum d'utilisateurs pouvant être mentionnés dans un commentaire
$wgFlowMaxThreadingDepth 8 Profondeur maximale des fils de discussion
$wgFlowEditorList array( 'visualeditor', 'wikitext' ); Liste des éditeurs à utiliser, dans l'ordre de priorité. Les éditeurs non pris en charge seront ignorés.
$wgFlowUseMemcache true Initialiser à false pour désactiver toutes les utilisations du cache mémoire. Il ne s'agit pas simplement de restituer le fonctionnement du cache car il n'est plus synchronisé avec le base de données. Il n'existe pas encore de processus officiel pour resynchroniser le cache; actuellement les versions par index doivent être incrémentées (demandez à l'équipe Flow).

Ceci va réduire mais pas nécessairement annuler toute performance. En plus des réponses aux requêtes reçues, les autres requêtes générées servent à remplir le cache. Une partie de refactorisation dans ObjectManager::findMulti pour permettre les requêtes sans les indexes, avec un ajustement de container.php pour ne prendre en compte que les indexes lorsqu'il s'agit de true, serait une manière de rendre cette option raisonnablement plus performante.

$wgFlowCacheTime 60 * 60 * 24 * 3 Période de temps par défaut durant laquelle les données StructuredDiscussions restent en mémoire cache. Cette valeur peut être adaptée en fonction des mesures de ratio trouvé/non-trouvé du cache pour obtenir le compromis souhaité entre l'utilisation de la mémoire, les requêtes de base de donnée et le temps de réponse. La valeur initiale par défaut de 3 jours indique que StructuredDiscussions va essayer de garder en mémoire cache tous les modèles de données demandés durant ces 3 derniers jours.
$wgFlowCacheVersion 4.7 Une chaîne de caractères ajoutée aux clés du cache. Renforcez cela si le format du cache ou la logique change. StructuredDiscussions can be a cross-wiki database accessed by wikis running different versions of the Flow code; WMF sometimes overrides this globally in wmf-config/CommonSettings.php
$wgFlowSearchServers array( 'localhost' ) serveurs ElasticSearch
$wgFlowSearchConnectionAttempts 1 // voir $wgCirrusSearchConnectionAttempts StructuredDiscussions search config setting - akin to CirrusSearch

Voir CirrusSearch.php pour la documentation de ces paramètres, qui ont des noms de variables similaires (s/FlowSearch/CirrusSearch/)

$wgFlowSearchBannedPlugins array() // voir $wgCirrusSearchBannedPlugins Flow search config setting - akin to CirrusSearch

Voir CirrusSearch.php pour la documentation de ces paramètres, qui ont des noms de variables similaires (s/FlowSearch/CirrusSearch/)

$wgFlowSearchOptimizeIndexForExperimentalHighlighter false // voir $wgCirrusSearchOptimizeIndexForExperimentalHighlighter StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchMaxShardsPerNode array() // voir $wgCirrusSearchMaxShardsPerNode StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchRefreshInterval 1 // voir $wgCirrusSearchRefreshInterval StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchMaintenanceTimeout 3600 // voir $wgCirrusSearchMaintenanceTimeout StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchReplicas '0-2' // voir $wgCirrusSearchReplicas StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchShardCount array( 'flow' => 4 ) // voir $wgCirrusSearchShardCount StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchCacheWarmers array() // voir $wgCirrusSearchCacheWarmers StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchMergeSettings
$wgFlowSearchMergeSettings = array(
	'flow' => array(
		'max_merge_at_once' => 10,
		'segments_per_tier' => 10,
		'reclaim_deletes_weight' => 2.0,
		'max_merged_segment' => '5g',
	),
);
// voir $wgCirrusSearchMergeSettings
StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchIndexAllocation
$wgFlowSearchIndexAllocation = array(
	'include' => array(),
	'exclude' => array(),
	'require' => array(),
);
// voir $wgCirrusSearchIndexAllocation
StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar

variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchEnabled false This allows running StructuredDiscussions without the search functionality. Right now, it's because the search functionality isn't ready for production, but we need to test it locally. We can decide later (after it's in production) whether to get rid of this setting. For example, this controls whether ApiFlowSearch is available.
$wgFlowAbuseFilterGroup 'flow' Custom group name for AbuseFilter

Acceptable values:

  • a specific value for flow-specific filters
  • 'default' to use core filters; make sure they are compatible with both core and StructuredDiscussions (e.g. StructuredDiscussions has no 'summary' variable to test on)
  • false to not use AbuseFilter
$wgFlowAbuseFilterEmergencyDisableThreshold 0.10 AbuseFilter emergency disable values for StructuredDiscussions
$wgFlowAbuseFilterEmergencyDisableCount 50 AbuseFilter emergency disable values for StructuredDiscussions
$wgFlowAbuseFilterEmergencyDisableAge 86400 // One day. AbuseFilter emergency disable values for StructuredDiscussions
$wgFlowAjaxTimeout 30 Timeout for StructuredDiscussions's AJAX requests (only affects ones that go through flow-api.js), in seconds
$wgFlowCoreActionWhitelist array( 'info', 'protect', 'unprotect', 'unwatch', 'watch', 'history', 'wikilove', 'move', 'delete' ); Actions that must pass through to MediaWiki on StructuredDiscussions-enabled pages
$wgFlowServerCompileTemplates false When set to true StructuredDiscussions will compile templates into their intermediate forms on every run. When set to false Flow will use the versions already written to disk. Production should always have this set to false.
$wgFlowEventLogging false Enable/disable event logging

Messages système

Si vous utilisez l'option Modifer le source sur les tableaux StructuredDiscussions, vous pourrez voir le texte d'aide "Votre modification utilise le balisage wikicode et vous pouvez avoir un aperçu du résultat à tout moment.". La partie utilise le marquage est liée à MediaWiki.org par le message système MediaWiki:Flow-wikitext-editor-help-uses-wikitext qui utilise un lien interwiki.

Dans quelques cas, ce lien interwiki, au lieu de pointer vers Help:Formatting sur MediaWiki.org, pointe vers une page Help:Formatting (habituellement non existante) du wiki hôte.

Ceci peut être corrigé en modifiant le lien interwiki sur MediaWiki:Flow-wikitext-editor-help-uses-wikitext vers un lien externe tel que

[https://www.mediawiki.org/wiki/Help:Formatting uses markup].

Résolution des problèmes

Flow n'apparaît pas comme désiré ? Il existe différentes corrections en fonction de la source du problème.

Ordre incorrect de déclaration des espaces de noms personnalisés

Les déclarations de Flow doivent être placées après les déclarations des espaces de noms personnalisés. L'ordre correct est :

define("NS_PORTAL_TALK", 3005); 
$wgExtraNamespaces[NS_PORTAL_TALK] = "Portal_Talk"; 
$wgNamespaceContentModels[NS_PORTAL_TALK] = 'flow-board';

Constantes natives incorrectes

Les pages de discussion dans l'espace de noms principal Main: sont définies par NS_TALK, et non pas NS_MAIN_TALK

La déclaration correcte est :

$wgNamespaceContentModels[NS_TALK] = 'flow-board';

Constantes d'extension non enregistrées

La constante représentant l'espace de noms Extension:Page Forms est supposée être PF_NS_FORM_TALK. Mais cette constante ne fonctionne pas dans la déclaration Flow -- vous devez utiliser le nombre actuel : 107. Ceci fonctionne :

$wgNamespaceContentModels[107] = 'flow-board';

L'utilisateur n'est pas informé si Page_Forms a échoué pendant l'enregistrement de ses constantes, ou si toutes les extensions doivent utiliser des nombres (et non des constantes) avec Flow. Voyez la liste de quelques constantes associées à d'autres espaces de noms d'extensions.

Anciens vestiges

Si Flow se présente correctement sur toutes les pages de discussion d'un espace de noms donné, sauf pour une page de cet espace de noms: il peut rester d'anciens éléments sur la page de discussion (même si elle paraît vide). Faites ce qui suit :

  1. Affichez la page de discussion qui ne charge pas Flow, par exemple : Portal_Talk:Welcome
  2. Supprimer la page de discussion en utilisant l'onglet Supprimer.
  3. Aller sur la page de contenu de cette page de discussion, par exemple : Portal:Welcome
  4. Cliquer sur Discussion.
  5. Vous obtenez Flow.

Architecture

Voir Flow/Architecture.

Contenus indésirables (spam)

Voir Extension:StructuredDiscussions/Spam pour d'autres informations sur la manière de combattre le pourriel dans Flow.

Modération

Voir Extension:StructuredDiscussions/Moderation pour davantage d'informations sur la modération dans Flow.

Exporter et importer

Un script de maintenance existe pour exporter les données Flow de manière semblable à Manual:DumpBackup.php

php extensions/Flow/maintenance/dumpBackup.php

phab:T114703 - fournit quelques indications concernant l'import.