Extension:StructuredDiscussions

This page is a translated version of the page Extension:StructuredDiscussions and the translation is 73% complete.
Other languages:
English • ‎Türkçe • ‎español • ‎français • ‎magyar • ‎svenska • ‎中文 • ‎日本語
MediaWiki 拡張機能マニュアル
OOjs UI icon advanced.svg
StructuredDiscussions
リリースの状態: 安定
StructuredDiscussions generic screenshot.png
実装 ページの操作
説明 トークページに討議と共同作業のシステムを導入
作者 Brandon Harris, Erik Bernhardson, Matthias Mullie, Andrew Garrett, Benny Situ, Shahyar Ghobadpour, Matthew Flaschen, Roan Kattouw, Moriel Schottlender, Stephane Bisson, Kunal Mehta
最新バージョン Continuous updates
互換性ポリシー リリースブランチ
MediaWiki 1.34+
PHP 5.4+
データベースの変更 はい
ライセンス GNU 一般公衆利用許諾書 2.0 以降
ダウンロード
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
StructuredDiscussions 拡張機能の翻訳にご協力ください
使用状況とバージョン マトリクスを確認してください。
問題点 未解決のタスク · バグを報告

StructuredDiscussions 拡張機能はトークページにおける討議と共同作業に使うシステムを提供します。 このページではインストールと管理の方法を紹介します。使い方のガイドはHelp:Structured Discussions をご参照ください。 この機能をご自分で試すには、サンドボックスのトークページが利用できます。

以前はFlowという名称で、ページによっては (Git リポジトリなど) ぞの名前を使っています。

StructuredDiscussions 拡張機能の開発にはウィキメディア財団のCollaborationチームが当たりました。 バグ修正のため管理を続けていますが、2017年9月に「StructuredDiscussions」に改名されたほかは、実体のある開発は2015年以降なされていません。 将来的に開発を再開する可能性はあります。 この拡張機能の開発状況ならびに設計の概要について詳しく知るには、Structured Discussionsをご参照ください。

インストール

  警告: ご注意=StructuredDiscussions は SQLite と互換性がありません。
  • Vagrant を使用している場合は、vagrant roles enable flow --provision でインストールしてください
手動インストール
  • 必要な依存関係の導入と設定がすべて完了していることをご確認ください。
  • ダウンロードして、ファイルを extensions/ フォルダー内の Flow という名前のディレクトリ内に配置します。
  • 以下のコードを LocalSettings.php の末尾に追加します:
    wfLoadExtension( 'Flow' );
    
  • 更新スクリプトを実行します。このスクリプトは、この拡張機能が必要とするデータベース テーブルを自動的に作成します。
  •   完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。
既知の問題に遭遇した場合は、トラブルシューティング節をご参照ください。

インストールが終了したら

ウェブサーバーの利用者権限で「update.php」を実行します (設定にもよりますが例えば www-data)。 さもなければ、/tmp/mw-UIDGeneratorUUID-UID-xx 一時ファイルが残ってしまい、MediaWiki には開くことができません (タスク T55791). Flow のボードを初めて開こうとした時、もし「必要な権限がありません」などのエラーが表示された場合は、必ずこれらのファイルを削除します。 さらに Flow の言及機能をビジュアル編集機能で有効にするため、update.phpは{{FlowMention}}を作成し (言及はアットマーク「@」もしくはツールバーのメニューに便利な自動入力インターフェースを提供して使えるようにします)。

これに加えてコマンドラインから「composer update --no-dev」を実行し、対象は MediaWiki をインストールしたフォルダで、この処理は git 経由でダウンロードしなかった場合も必要です。

注意点は、StructuredDiscussionsを有効もしくは無効にする手順をすべて実行することで、これには提示されたスクリプトをすべて実行することも含まれます。

依存関係

必須
  • Extension:Echo - 通知用 (例:投稿への返事)
  • 対象のキャッシュが必要です。その実行には memcach (汎用の分散型メモリキャッシュシステム) の使用が推奨されます。現在、Redis を使うと問題が発生するかもしれません。
  • Extension:ParserFunctions - 自動的にインストールされるテンプレートに対応 (例=#time)
  • $wgContentHandlerUseDB = true Special:EnableStructuredDiscussions 対応に必要で、名前空間のコンテンツモデルを変更しても、同名の名前空間がすでにある場合の障害を予防します (StructuredDiscussionsへの入力もしくは出力のどちらでも)。
強く推奨
  • Parsoidは投稿をHTML形式($wgFlowContentFormat = 'html';)として保存し、パフォーマンスを改善。 WMF(ウィキメディア財団)のウィキの設定がこうなっているからで、現状ではもっともテストが行き届いた設定です。 MediaWiki-Vagrantを使用している場合、StructuredDiscussionsを有効にすると Parsoid が有効になり、形式を「html」に設定します。
省略可能

インストールの確認

StructuredDiscussions を有効にしたページのどれかを開き (#Configurationを参照)、話題の追加やその見出しの編集を試してください。

アップグレード

$wgFlowOccupyPages変数は StructuredDiscussions ボードを列挙してきましたが、タスク T105574の一環として除去されました。. バージョン 1.26 以降に更新する準備として、管理スクリプトを実行します。

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

1番目のスクリプトは MediaWiki 1.34. 以前にコアに導入されていました。 1.35 以降はもう必要がなくなりました。

設定

LocalSettings.phpで設定が必要な項目を説明します。

StructuredDiscussions を有効もしくは無効にするには

MediaWiki 1.35, 以前は、StructuredDiscussions を名前空間で有効または無効にするには、まず影響を受ける名前空間でpopulateContentModel.php を実行します (代わりにallで実行しても可)。 1.35 以降はもう必要がなくなりました。 例=NS_TALK (1) や NS_USER_TALK (3) で有効もしくは無効にする場合、以下のPHP 設定の状態なら次のようになります。

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

mwscript が未設定の場合は、mwscript populateContentModel.phpphp maintenance/populateContentModel.phpと入れ替えます。

上記の後に、特定の名前空間で$wgNamespaceContentModels [namespace]を設定します。 例:

  // 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';

グローバルな設定変更してはダメです ($wgNamespaceContentModels =)。

単一ページで有効にする場合は、Special:EnableStructuredDiscussionsを利用します。 これにはフローボード作成権限 flow-create-board が必要で、どんなグループでも権限を付与されます (利用者権限のグループ権限変更のページ Manual:User rights#Changing group permissions をご参照ください)。

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

ご利用のwikiのすべてのページで StructuredDiscussions を無効にする方法はExtension:StructuredDiscussions/Turning off all StructuredDiscussions をご参照ください。

Parsoid 設定

StructuredDiscussions は Parsoid または RESTBase サービスに接続するため、バーチャル REST サービスを使います。 ご利用のウィキでVisualEditor 拡張機能を読み込んだ場合、これの設定はすでに済んでいる可能性があります。 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',
);

単体のParsoid は複数のウィキを取り扱います。 Parsoid の domain 設定はお使いのウィキの設定を Parsoid に指定します。 既定では$wgCanonicalServerが命名するホスト名に設定されるものの、任意の文字列を選ぶこともできます。 旧版の Parsoid でも固有の「接頭辞」を用いてこのサーバを特定します。ここにそれをリストする必要があるかもしれません。

Parsoid をあらかじめ適合するように設定する必要があります。Parsoid のlocalsettings.js の1行を使い次のように記述します。

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

ここでも Parsoid 設定で「domain」(ドメイン)属性はオプションです。指定しないと既定でuri属性で採用するホスト名を採用します。 「prefix」(接頭辞)属性も除去可能ですが、旧版の Parsoid を利用する場合は例外です。 Parsoid の localsettings.js に記述された domainprefix がご利用のウィキの LocalSettings.php と一致することを確認します。

詳細はParsoid/Setup#Configuration をご参照ください。

"maximum function nesting level of '100' reached, aborting"

If you get this error, you need to set xdebug.max_nesting_level = 200, probably in /etc/php5/apache2/php.ini.[1]

「例外を発見:CASがXyz で実行しない」状態

StructuredDiscussions は $cache->cas()CACHE_ACCEL (APCBagOStuff)などのキャッシュした実行でCASを伴わないものを実施します。 変更し、たとえばmemcachedをインストールし$wgMainCacheType = CACHE_MEMCACHED;を設定するなど、違うキャッシュを使う必要があるかもしれません。

権限

StructuredDiscussionsで書き込みの作業をする利用者は、コアのedit権限が必要です。 この権限を'user'グループ (ログイン状態で) にのみ付与するウィキがたくさんあります。

StructuredDiscussions が定義する動作は多く、たとえばedit-postdelete-topicがあります (詳細な一覧はFlowActions.phpをご参照ください)。 投稿が皆さん自身のものかどうか、変更したかどうかにより、権限が異なります。 一例として、既定では利用者は自分自身の投稿の編集を認められますが、他者の投稿を改変できるのはflow-edit-post権限を付与された'sysop'グループの利用者のみです。 Flow に関して、どのグループにどの権限を付与するか、動作ごとに必要な権限の選定ができます。権限の概要の詳細はManual:利用者権限をご参照ください。

既存のページの移行

既存の単一ページを移行するには、Special:EnableStructuredDiscussionsを使います。 すると自動的に単一ページの過去ログ化 (それによって StructuredDiscussions を有効にする) 扱いをします。

maintenance/convertNamespaceFromWikitext.php というスクリプトはこの名前空間の変換と有効化を自動化します。詳細はFlow/Converting talk pages参照。 これはどちらかというと WMF固有であり、実行前にご利用のデータベースをまずバックアップし、操作の仕方を調べてください。 別のmaintenance/convertAllLqtPages.phpというスクリプトはLiquidThreadsページとスレッドをFlowのボードと話題に変換します。注意事項はFlow/Converting LiquidThreadsを参照。

Flow はTopic:名前空間を追加します。Extension default namespaces#flowを参照。 これと衝突する既存のページの有無は、Special:PrefixIndex/Topic:で確認してください。見つかった場合は管理スクリプトmaintenance/namespaceDupes.phpを走らせます。

設定

Configuration settings in Flow.php
パラメーター 既定 コメント
$wgFlowHelpPage //www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Flow URL for more information about the Flow notification system
$wgFlowCluster false $wgFlowCluster will define what external DB server should be used.

If set to false, the current database (wfGetDB) will be used to read/write data from/to. If StructuredDiscussions data is supposed to be stored on an external database, set the value of this variable to the $wgExternalServers key representing that external connection.

$wgFlowDefaultWikiDb false Database to use for StructuredDiscussions metadata. Set to false to use the wiki db.

Any number of wikis can and should share the same StructuredDiscussions database.

$wgFlowExternalStore false Used for content storage.

False to store content in StructuredDiscussions db. Otherwise a cluster or list of clusters to use with ExternalStore. Provided clusters must exist $wgExternalStores. Multiple clusters required for HA, so inserts can continue if one of the masters is down for maint or any other reason.

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

$wgFlowContentFormat html By default, StructuredDiscussions will store content in HTML.

However, this requires having Parsoid up and running, as it'll be necessary to convert HTML to wikitext for the basic editor. (n.b. to use VisualEditor, you'll definitely need Parsoid, so if you do support VE, might as well set this to HTML right away)

If $wgFlowParsoidURL is null, $wgFlowContentFormat will be forced to wikitext.

The 'wikitext' format is likely to be deprecated in the future.

$wgFlowParsoidURL null
  警告: Deprecated. Use $wgVirtualRestConfig['modules']['parsoid']['url'].

StructuredDiscussions Parsoid config

Please note that this configuration is separate from VE's Parsoid config.

$wgFlowParsoidPrefix null
  警告: Deprecated. Use $wgVirtualRestConfig['modules']['parsoid']['prefix'].

Flow Parsoid config

Please note that this configuration is separate from VE's Parsoid config.

$wgFlowParsoidTimeout null
  警告: Deprecated. Use $wgVirtualRestConfig['modules']['parsoid']['timeout'].

Flow Parsoid config

Please note that this configuration is separate from VE's Parsoid config.

$wgFlowParsoidForwardCookies false
  警告: Deprecated. Use $wgVirtualRestConfig['modules']['parsoid']['forwardCookies'].

Forward users' Cookie: headers to Parsoid. Required for private wikis (login required to read).

If the wiki is not private (i.e. $wgGroupPermissions['*']['read'] is true) this configuration variable will be ignored.

This feature requires a non-locking session store. The default session store will not work and will cause deadlocks when trying to use this feature. If you experience deadlock issues, enable $wgSessionsInObjectCache.

WARNING: ONLY enable this on private wikis and ONLY IF you understand the SECURITY IMPLICATIONS of sending Cookie headers to Parsoid over HTTP.

For security reasons, it is strongly recommended that $wgVirtualRestConfig['modules']['parsoid']['forwardCookies'] be pointed to localhost if this setting is enabled.
$wgFlowDefaultWorkflow discussion When visiting the StructuredDiscussions for an article but not specifying what type of workflow should be viewed, use this workflow
$wgFlowDefaultLimit 10 Limits for paging
$wgFlowMaxLimit 100 Limits for paging
$wgFlowMaxMentionCount 100 Maximum number of users that can be mentioned in one comment
$wgFlowMaxThreadingDepth 8 スレッドの最大の深さ
$wgFlowEditorList array( 'visualeditor', 'wikitext' ); 使用するエディタの一覧、優先順。 サポートしていないエディタは一覧に載りません。
$wgFlowUseMemcache true これをfalseに設定し memcache* すべての利用を無効にします。(*=訳注:汎用の分散型メモリキャッシュシステム)

キャッシュを再び有効にするのはまだです。データベースとの同期が切れてしまいます。 キャッシュの同期を復活させる正規の手順はまだないため、現状では索引のバージョン単位で増加分をとりこみます(Flow 担当者に依頼してください)。

これでパフォーマンスの減速はあっても止まることはありません。 発生するクエリはキャッシュを満たすために用いるものであって、リクエストに応えるために必要なクエリではありません。 A bit of a refactor in ObjectManager::findMulti to allow query without indexes, along with adjusting container.php to only include the indexes when this is true, would get most of the way towards making this a reasonably performant option.

$wgFlowCacheTime 60 * 60 * 24 * 3 The default length of time to cache StructuredDiscussions data in memcache.

This value can be tuned in conjunction with measurements of cache hit/miss ratios to achieve the desired tradeoff between memory usage, db queries, and response time. The initial default of 3 days means StructuredDiscussions will attempt to keep in memcache all data models requested in the last 3 days.

$wgFlowCacheVersion 4.7 A version string appended to cache keys.

Bump this if cache format or logic changes. 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' ) ElasticSearch servers
$wgFlowSearchConnectionAttempts 1 // $wgCirrusSearchConnectionAttempts を参照

StructuredDiscussions search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchBannedPlugins array() // $wgCirrusSearchBannedPlugins を参照

Flow search config setting - akin to CirrusSearch

See CirrusSearch.php for documentation for these params, which have similar variable names (s/FlowSearch/CirrusSearch/)

$wgFlowSearchOptimizeIndexForExperimentalHighlighter false // $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() // $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 // $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 // $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' // $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 ) // $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() // $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',
	),
);
// $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(),
);
// $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

システムメッセージ

StructuredDiscussions のボードでソース編集 オプションを使うと、ヘルプ文の"ウィキテキストはマークアップを使用、また、いつでも結果をプレビューできます。"を表示できます。 「マークアップを使用」の部分のリンク先はシステムメッセージMediaWiki:Flow-wikitext-editor-help-uses-wikitextを介し、MediaWiki.orgへのウィキ間リンクを利用します。

場合によっては、このウィキ間リンクはMediaWiki.orgでHelp:Formatting を指す代わりに、ホスト先のウィキで(通常は存在しない)Help:Formattingページを指します。

その修正はMediaWiki:Flow-wikitext-editor-help-uses-wikitextのウィキ間リンクを外部リンクとして

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

のように書き換えます。

トラブルシューティング

Flow が思ったように使えませんか? 問題の原因により、修正方法が変わります。

Custom-Namespace 宣言の順序が間違っている

Flow 宣言はカスタムの名前空間名の後に 記述しなければなりません。 正しい順序:

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

間違ったネイティブの定数

メインの名前空間ではNS_TALKと定義されるトークページの定数は、NS_MAIN_TALKではありません

正しい宣言とは:

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

登録のない拡張機能の定数

Extension:Page Forms 名前空間の定数はPF_NS_FORM_TALK になる見込みです。 ただしその定数は Flow 宣言では無効です -- そこで実際の数字を使う必要があります: 107。 するとその作用は次のとおりです。

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

筆者には、Flow に関してPage_Formsが定数を正しく登録しない理由、あるいは拡張機能 すべてで (定数の代わりに) 数字を使うべきか原因は不明です。 他の名前空間用の定数の一覧をご参照ください。

古い名残

特定の名前区間のトークページすべてできちんと Flow が働くようになり、その名前空間であるページ のみ例外だったとして、トークページにジャンクの名残があるのかもしれません(見た目には何もないように見えても。) 次の処理をします。

  1. Flow を読み込まないトークページを閲覧します。たとえば: Portal_Talk:Welcome
  2. 削除タブを使い、トークページを削除します。
  3. そのトークページが付いたコンテンツのページを開きます。例: Portal:Welcome
  4. 「Discuss」をクリックします。
  5. すると Flow が有効になります。

アーキテクチャ

Flow/Architecture を参照してください。

スパム

FlowFlow のスパム対策詳細は Extension:StructuredDiscussions/Spam をご参照ください。

Moderation

See Extension:StructuredDiscussions/Moderation for more information on moderation in Flow.

エクスポートとインポート

Flow のデータをエクスポートする管理スクリプトがあり、Manual:DumpBackup.phpに類似します。

php extensions/Flow/maintenance/dumpBackup.php

タスク T114703 - インポートのヒントをいくつか示します。