Extension:FlaggedRevs
FlaggedRevisions拡張機能を使うと、編集者(Editor)および査読者(Reviewer)は記事の各版を格付けし、どの特定の版を既定として通常のページ表示に用いるか設定できます。 これはつまり、MediaWikiをよりコンテンツマネージメントシステムらしくするものです。
インストール
- ダウンロードして、ファイルを
extensions/
フォルダー内のFlaggedRevs
という名前のディレクトリ内に配置します。
開発者とコード寄稿者は、上記の代わりに以下を使用してGitからインストールします:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/FlaggedRevs - 以下のコードを LocalSettings.php ファイルの末尾に追加します:
wfLoadExtension( 'FlaggedRevs' );
- 更新スクリプトを実行します。このスクリプトは、この拡張機能が必要とするデータベーステーブルを自動的に作成します。
- 必要に応じて設定します。
- 完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。
導入
AllowEncodedSlashes
If you are using Apache 2.3.12 or later, you should set AllowEncodedSlashes to "NoDecode".
Add the following line to your <VirtualHost>
or, if you don't have one, at the end of your httpd.conf file:
AllowEncodedSlashes NoDecode
After you edited httpd.conf, Apache needs to be restarted.
Alter your .htaccess (if needed)
If you are shortening your URLs , you need to add an exception to .htaccess to allow the use of the REST API .
FlaggedRevs calls on rest.php . For example:
https://[domain]/w/rest.php/flaggedrevs/internal/review/Main_Page
If the .htaccess conditions are not properly set when the above url is called, FlaggedRevs will literally try to access an article named "W/rest.php/flaggedrevs/internal/review/Main Page
".
Here is one way to add an exception to .htaccess, emphasis added:
RewriteEngine On RewriteCond %{REQUEST_URI} !^/w/rest\.php RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d RewriteRule ^(.*)$ w/index.php?title=$1 [L,QSA] RewriteRule ^$ w/index.php [L,QSA]
Promote users to reviewers
FlaggedRevs の初回インストール後は、査読者のウィジェットは利用者からは不可視になります。 これを修正するにはウィキのビューロクラットとしてログイン後、Special:UserRights を開き 1 人以上の利用者に査読者の権限を付与します。 査読者には、編集可能なページ末に査読者用ウィジェットが表示されます。
Article review statistics (optional)
/var/www/mediawiki
ディレクトリに MediaWiki があることを前提に、また 最新のUnix 系 OS (特に Linux および Mac OS X) 向けに説明しています。For a scheduled collection of article review statistics, create a cron job to run extensions/FlaggedRevs/maintenance/updateStats.php
at a regular interval.
スクリプトの実行に要する時間を確認し、あなたの指定した間隔でcronジョブを設定するためにtime php updateStats.php
を実行します。
For example, to create a cron job that runs updateStats.php
every hour, add the following to the crontab for the user running the web server (e.g., www-data
):
@hourly php /var/www/mediawiki/extensions/FlaggedRevs/maintenance/updateStats.php
設定
このページの一部 (マスター版で削除された機能 関連) は直近の情報を反映していません。 |
利用者権限と利用者グループ
何も設定していない場合は、誰も何も査読することができないため、最初に利用者権限を設定する必要があります。
利用者グループ | 利用者権限 |
---|---|
reviewer | validate |
review | |
editor | |
autoreview | |
unreviewedpages |
利用者権限
FlaggedRevsは、以下の利用者権限を新しく追加します。
review
– この権限を有する利用者は、各版を査読することができます。validate
– この権限を有する利用者は、各版を査読し、すべてのタグを任意のレベルに設定出来ます。autoreview
– この権限を有する利用者によって作成されたすべての版は、自動的に査読済みとなります。autoreviewrestore
– 当該の利用者による差し戻しの自動巡回。unreviewedpages
– Special:UnreviewedPages (未査読ページ一覧) を閲覧できますstablesettings
– 利用者は安定版のいずれのページも設定を変更できますmovestable
– 利用者は安定版のいずれのページも移動できます
利用者グループ
FlaggedRevsは、以下の利用者グループを新しく追加します。
editor
– MediaWiki 標準の利用者権限autoconfirmed, editsemiprotected
に加えて、autoreview, review, unreviewedpages
の権限を持ちますreviewer
–autoreview, review, unreviewedpages, validate
の権限に加えて、MediaWiki の標準的な利用者権限autoconfirmed, editsemiprotected
を持ちますautoreview
–autoreview
の権限を持ちます。
利用者権限の割り当て
利用者権限は以下の2つの方法で各利用者に割り当てることができます。
- 既存の利用者グループへの割り当て
LocalSettings.php
で既に設定されている利用者グループへ、これらの権限を割り当てる方法です。
$wgGroupPermissions['sysop']['review'] = true; //allow administrators to review revisions
- 特定の利用者への割り当て
Special:UserRights (特別:利用者権限) を使用して、利用者アカウントを手動で特定のグループに追加します。
- 既定の設定では:
- ビューロクラットは、査読者(Reviewer)を追加・除去できます。
- 管理者は、自動査読者(Autoreviewer)および編集者(Editor)を追加・除去できます。
基本的な設定
FlaggedRevs.php
は多くの設定可能な変数を追加します。
これらの変数は LocalSettings.php
内で設定してください。
$wgFlaggedRevsNamespaces
– どの名前空間で査読が可能になるかを設定します。 整数配列で、 既定の名前空間がどのような整数にマッピングされるかは Manual:名前空間の定数 を参照してください。また、読みやすさのために定義された定数を使用してください。$wgFlaggedRevsTags
– タグとその'levels'設定を設定します。- 定義
$wgFlaggedRevsTags
は、各タグ名に対応するキーを持つ連想配列です。 配列の唯一の意味のある値は、レビューレベルの数を制御する'levels'であり、配列は1つの要素のみを持つことができます。- ラベル付け
- 各タグは 「MediaWiki:revreview-<タグ名>」ページを編集することで、ラベルを名付けることができます。
- 各タグの各レベルは、「MediaWiki:revreview-<タグ名>-<レベル番号>」を編集することで、ラベルを名付けることができます。
- 既定では、各タグは
$wgFlaggedRevsTags
配列で設定された名称でラベル付けされています。 これを上書きして、例えばタグを大文字の名前で表示するには、管理者がこれらのページを編集して、表示されている内容を変更する必要があります。例えば、MediaWiki:revreview-accuracy
- タグのレベル名を設定するには、以下のページを編集することで設定できます。
タグ レベル ラベル名ページ 内容 accuracy 0 MediaWiki:revreview-accuracy-0 不十分 1 MediaWiki:revreview-accuracy-1 一覧済み 2 MediaWiki:revreview-accuracy-2 的確
- これらの設定のまとめは次のようになります。
タグ名 レベル名 内容の正確さ 不十分 一覧済み 的確
$wgFlaggedRevsOverride
– 安定版を既定のページ表示にするかどうか- 個々のページは、特別:固定を使って安定版か下書き板のどちらを既定の表示内容にするかを設定できます。
$wgFlaggedRevsTagsRestrictions
– 各フラグをキーに、各利用者権限を持った人が設定できるレベルの最高値を値に設定した連想配列- 例
$wgFlaggedRevsTagsRestrictions = [ 'accuracy' => [ 'review' => 1 ], ];
ユーザー インターフェイス
$wgSimpleFlaggedRevsUI
– 有効化されると、アイコン表示されたUIが使用されます。 編集モードでのタグは変更されません。$wgFlaggedRevsLowProfile
– 最新版が査読されている場合、査読状況を示すボックス・バーを隠すかどうかを設定できます。 これらに関する説明文も除去されます。
ワークフロー
$wgFlaggedRevsAutoReview
– 有効化された場合、'autoreview' 権限を持つ利用者によるすべての編集は、保存と同時に自動的に査読済みになります。 「査読を送信」ボタンを押す必要はありません。 ただし、自動査読が実行されるためには、それより前の版が査読されている必要があり、未査読の版がある場合は発動しません。$wgFlaggedRevsTagsAuto
–wgFlaggedRevsAutoReview
が有効化されている場合に、自動査読された場合にどのタグがどのレベルとして評価されるのかを設定します。 許可されていると、以前の版のタグレベルと同じレベルに設定されます。 これは連想配列で、各キーがタグで、各値がタグのレベルです。- 例
$wgFlaggedRevsTagsAuto = [ 'accuracy' => 1 ];
- テンプレートや画像の変更も(各ページごとに)自動査読されます。 これはつまり、良くない版も査読済みにされる場合があるということです。 利用者は、必ずプレビューを確認したり、保存後に手動で査読をすることが推奨されます。
$wgNamespaceProtection[NS_TEMPLATE]
を[ 'editor' ]
と[ 'autoconfirmed' ]
のいずれかに設定することもできます
利用者の自動昇格
$wgFlaggedRevsAutopromote
– 配列のキーとして次の項目を使用します。日付、編集回数、時間の頻度、ベンチマーク、メール確認、コンテンツページの最近の更新、コンテンツ編集の合計回数、編集したコンテンツ ページ総数、編集要約欄の使用状況、IP の独自性、利用者ページの有無。 値は右記の項目を表します。特定の利用者アカウントが編集者資格に自動で昇格される条件となる日数/編集回数、さらにメール確認と利用者ページの有無が必須条件かどうか。 当該の利用者はX 件以上の編集を Y 日以上の間隔を挟んで実施するものと規定され、ベンチマーク数を X、日数を Y にそれぞれ充当します。 すべて無効にするには、この変数を false に設定。- 編集者グループから除去された利用者が、再度、自動昇格することはありません(変更記録が確認されます)
- いくつかの回数は過去遡及しません。そのため、自動昇格が遅れることもあります。
- 例
$wgFlaggedRevsAutopromote
は例えば以下のように設定できます:$wgFlaggedRevsAutopromote['days'] = 60; # 登録からの経過時間 $wgFlaggedRevsAutopromote['edits'] = 150; # 合計編集回数 $wgFlaggedRevsAutopromote['excludeDeleted'] = true; # 先の 'edits' 回数に削除された編集を含めるかどうか $wgFlaggedRevsAutopromote['spacing'] = 3; # 編集回数の間隔 $wgFlaggedRevsAutopromote['benchmarks'] = 15; # 編集間隔の編集数 $wgFlaggedRevsAutopromote['recentContentEdits'] = 10; # $wgContentNamespaces 内での最近の編集数 $wgFlaggedRevsAutopromote['totalContentEdits'] = 30; # $wgContentNamespaces 内での編集数 $wgFlaggedRevsAutopromote['uniqueContentPages'] = 10; # $wgContentNamespaces 内での編集したページ数 $wgFlaggedRevsAutopromote['editComments'] = 5; # 編集要約を使用した回数 $wgFlaggedRevsAutopromote['email'] = true; # メールアドレスの確認(emailconfirmed)をすべきかどうか $wgFlaggedRevsAutopromote['userpageBytes'] = 0; # 利用者ページが必要な場合、その必要な最小サイズ
高度な設定
$wgFlaggedRevsRestrictionLevels
- Restriction levels forautoreview
/review
rights. When a level is selected for a page, an edit made by a user will not be auto-reviewed if the user lacks the specified permission. Levels are set at Special:Stabilization.$wgFlaggedRevsProtection
- Set this to use FlaggedRevs only as a protection-like mechanism (Help:変更の保留 ), rather than the standard configuration.$wgFlaggedRevsAutoConfirm
- Define when users get to have their own edits auto-reviewed. Set tofalse
to disable.$wgFlaggedRevsHandleIncludes
- Whether to use stable versions of templates when rendering the stable version of a page.
利用者以外は記事の安定版のみを閲覧できるようにするには、Extension:FlaggedRevs/Restricting unapproved revisions を参照してください。
使用法
- 関連項目: Help:FlaggedRevs
ページの承認
査読権限を持つ利用者には、ページ表示の際 (ページの下部) や差分表示の際 (ページの上部) に小さな格付けフォームが表示され、それを使用して版の査読をすることができます。 各タグは、少なくとも承認できる最低レベルを満たしている必要があります。 査読前に、利用者はテンプレートや画像を含むページ全体を確認する必要があります。 「(安定版との差分)」を使えばこの作業をより早く実行できるでしょう。
利用者は、編集できないページを査読することはできません。 また、設定できないレベルより下に、レベルを下げることもできません。 もちろん、ブロックされた利用者はなにもできません。
保存
Special:UnreviewedPages (特別:未査読ページ一覧) では、未査読なページの一覧が表示されます (編集者のみが使用できます)。 表示する名前空間を指定する必要があり、カテゴリを指定することもできます。
Special:OldReviewedPages (特別:保留中の変更) では、査読済みだが編集が保留されているページの一覧が表示されます (編集者のみが使用できます)。 表示するカテゴリを指定することもできます。
査読できないページも、編集者によって(主に荒らし対策の目的で)引き続き巡回することもでき、巡回された一覧も表示できます。
記録
すべての関連操作は永久的に記録されるため、すべて後から追跡したり確認することができます。
- 編集者など各グループへの追加・除去の記録は'Special:Log/userrights'(特別:記録/<グループ名>)で確認できます。
- 版の承認・非承認の記録は'Special:Log/review'(特別:記録/review)に保存されています。
- 安定版の設定変更記録は'Special:Log/stable'(特別:記録/stable)に表示されます。
注記
- この拡張機能によって
$wgUseRCPatrol
が有効化されます が、査読済み版は最近の更新において巡回済みとされます。 つまり、査読可能な版を巡回するには、査読するしかないということです。 査読不可能なページは引き続き、そのサイトの巡回設定にしたがって巡回されます。 - 管理者は特定のページに対して、安定版を既定で表示するページとするかどうかを変更できます。 これを無効化するには、
LocalSettings.php
内で$wgGroupPermissions['sysop']['stablesettings'] = false;
と指定してください。 - ページヘのリンク、カテゴリ、画像、テンプレート、言語間リンクおよび外部リンクは、最新版に基づきます。
- 査読できないページを移動することはできません。 これは意図的なもので、タスク T15994を参照してください。 これを回避するには、
$wgGroupPermissions['autoconfirmed']['movestable'] = true;
を LocalSettings.php に追加 - 編集者権限を剥奪するには、一時的にはブロックを、永久的には Special:UserRights (特別:利用者権限) を使用してください。 降格の記録は、追跡のために追加で表示されます。
API
FlaggedRevs adds API modules for reviewing revisions and configuring "stabilization" of pages, a module for retrieving flag configuration, and two list modules corresponding to the special pages for unreviewed pages and "old" reviewed pages.
action=review
ページをレビューします。
- パラメーター
revid
: フラグを設定するリビジョンIDtoken
: A csrf token retrieved through action=query&meta=tokenscomment
: レビューへのコメント(任意)flag_accuracy
: Set the flag named "accuracy" to the specified value; (replace "accuracy" with the flag name to set another flag)unapprove
: If set, revision will be unapproved rather than approved
- 例
結果 |
---|
<api>
<review revid="12345" />
</api>
|
action=stabilize
ページ安定化の設定を変更します。
- パラメーター
title
: 安定化させるページのページ名reason
: 安定化の理由expiry
: 安定化の有効期限。既定値: 無期限review
: Whether to auto-review the pagewatch
: ページを見るかどうかtoken
: An edit token retrieved through action=query&meta=tokens
- For protection-like configurations (
$wgFlaggedRevsProtection=true
):
protectlevel
: The right users must have in order for their edits to not require review.
- Otherwise (
$wgFlaggedRevsProtection=false
):
default
: Default revision to show (latest | stable)autoreview
: Restriction level for the 'autoreview' right (sysop | none). Default: none
- 例
結果 |
---|
<api>
<stabilize title="Foo" default="stable" autoreview="none" expiry="infinite" />
</api>
|
action=flagconfig
Shows information about review flag configuration.
The following parameters are returned for each tag:
name
: the name of the flaglevels
: the number of possible levels the flag has (not counting the "unreviewed" level)
The displayed name for each flag and the different level names for each flag are MediaWiki messages, so can be set and retrieved through the appropriate page; for example the name for the first level of the "accuracy" flag is located at MediaWiki:revreview-accuracy-1.
- 例
結果 |
---|
<api>
<flagconfig>
<tag name="value" levels="3" tier1="1" />
</flagconfig>
</api>
|
list=unreviewedpages
Lists pages which have never been reviewed.
- パラメーター
urstart
: Start listing at this page title.urend
: Stop listing at this page title.urnamespace
: The namespaces to enumerate.urfilterredir
: How to filter for redirectsurfilterlevel
: How to filter by quality (0=sighted,1=quality)urlimit
: How many total pages to return.
- 例
結果 |
---|
<api>
<query-continue>
<unreviewedpages urstart="Arbeitgeberverband_Chemie_und_verwandte_Industrien_für_das_Land_Hessen" />
</query-continue>
<query>
<unreviewedpages>
<p pageid="4762806" ns="0" title="Aaftink" revid="65175047" />
<p pageid="4747500" ns="0" title="Abt RS6" revid="64976429" />
<p pageid="4749877" ns="0" title="Acht Vorlesungen über den Konstruktiven Realismus" revid="65089962" />
<p pageid="4758156" ns="0" title="Alkylglycerole" revid="65169004" />
<p pageid="4719044" ns="0" title="All Riot" revid="64767732" />
<p pageid="4745418" ns="0" title="Allgäu-Panorama-Marathon" revid="64974783" />
<p pageid="4729976" ns="0" title="An- und Einpressen" revid="64742640" />
<p pageid="4742559" ns="0" title="Anjara I. Bartz" revid="64925772" />
<p pageid="4740681" ns="0" title="Anthony Norris Groves" revid="65064712" />
<p pageid="4759964" ns="0" title="Antonino Asta" revid="65169073" />
</unreviewedpages>
</query>
</api>
|
list=oldreviewedpages
Lists pages that have at some point been reviewed, but for which the most recent revision is not reviewed.
- パラメーター
orstart
: Start listing from this timestamporend
: Stop listing at this timestamp.ordir
: In which direction to list.ornamespace
: 列挙する対象の名前空間。orfilterredir
: フィルタでリダイレクトを抽出するorlimit
: 返すページの合計。
- 例
結果 |
---|
<api>
<query-continue>
<oldreviewedpages orstart="2009-09-15T20:23:05Z" />
</query-continue>
<query>
<oldreviewedpages>
<p pageid="144735" ns="0" title="Two International Finance Centre" revid="64562654" stable_revid="62769201" pending_since="2009-09-15T16:16:33Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="1629949" ns="0" title="Porta San Sebastiano" revid="64791898" stable_revid="61610797" pending_since="2009-09-15T16:19:32Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="2157354" ns="0" title="Entwicklungspolitik der Europäischen Union" revid="64640078" stable_revid="59929751" pending_since="2009-09-15T16:38:33Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="971904" ns="0" title="Federpendel" revid="65142775" stable_revid="59587441" pending_since="2009-09-15T17:37:29Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="3106812" ns="0" title="Soultzbach-les-Bains" revid="64552516" stable_revid="60455707" pending_since="2009-09-15T19:04:07Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="1223029" ns="0" title="VfR Bürstadt" revid="65150048" stable_revid="62925935" pending_since="2009-09-15T19:35:30Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="829158" ns="0" title="GSP" revid="64553869" stable_revid="62913440" pending_since="2009-09-15T19:38:46Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="3453867" ns="0" title="Agios Dimitrios" revid="65103799" stable_revid="64544222" pending_since="2009-09-15T19:47:10Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="2583263" ns="0" title="Jörg Kudlich" revid="64554475" stable_revid="62429967" pending_since="2009-09-15T20:03:24Z" flagged_level="0" flagged_level_text="stable" />
<p pageid="325478" ns="0" title="Liste deutscher Komponisten klassischer Musik" revid="65089571" stable_revid="63582610" pending_since="2009-09-15T20:21:55Z" flagged_level="0" flagged_level_text="stable" />
</oldreviewedpages>
</query>
</api>
|
prop=flagged
特定のページからフラッグの状況の情報を得るには、action=query&prop=flagged を使用。
制限
- ウィキを横断した読み込みは対象外になります。
アンインストール
LocalSettings.php
から行のrequire_once
またはwfLoadExtension
を除去- テーブルに
FlaggedRevs.sql
を当てる page
テーブルから列のpage_ext_reviewed
、page_ext_quality
、page_ext_stable
さらに索引ext_namespace_reviewed
を除去(この拡張機能の古いバージョンが使用したので存在する場合のみ)- コマンドラインから
maintenance/refreshLinks.php
を走らせ、安定版のリンクを一掃する $wgFileCache
を利用する場合はコマンドラインからmaintenance/rebuildFileCache.php 0 overwrite
を走らせる
試験プラットフォーム
関連項目
- Help:編集の巡回
- Extension:FlaggedRevs/Specifications
- Flagged Revisions on Wikimedia projects
- Project:Editor – この拡張機能から生まれる利用者グループや権限の解説文書。mediawiki.org で実用された時期のもの
- Content approval extensions
外部リンク
- オープンプロジェクトの品質の保持 – 2008年時点のウィキメディアのブログ投稿
- 画像で見る Flagged Revisions – ウィキメディア・コモンズ
- Flagged Revisions とは – メタ・ウィキ
ライセンス
© GPL, Aaron Schulz, Joerg Baach, 2007
この拡張機能は 1 つ以上のウィキメディアのプロジェクトで使用されています。 これはおそらく、この拡張機能が安定していて高いトラフィックのウェブサイトでも十分に動作することを意味します。 この拡張機能がインストールされている場所を確認するには、ウィキメディアの設定ファイル CommonSettings.php および InitialiseSettings.php 内で、この拡張機能の名前を探してください。 特定のウィキにインストールされている拡張機能の完全な一覧は、そのウィキの Special:Version ページにあります。 |
この拡張機能は以下のウィキ ファーム/ウィキ ホスト/パッケージに含まれています: これは正式な一覧ではありません。 一部のウィキ ファーム/ウィキ ホスト/パッケージは、ここに記載されていなくてもこの拡張機能を含んでいる場合があります。 必ずご利用のウィキ ファーム、ウィキ ホスト、バンドルで確認してください。 |
この作品は自由ソフトウェアです。あなたは、フリーソフトウェア財団の発行する GNU 一般公衆利用許諾書 (GNU General Public License) (バージョン2、またはそれ以降のライセンス) の規約に基づき、このライブラリの再配布や改変ができます。この作品は、有用であることを期待して配布されていますが、商用あるいは特定の目的に適するかどうかも含めて、暗黙的にも、一切保証されません。詳しくは、バージョン2およびバージョン3のGNU 一般公衆利用許諾書をご覧ください。 |