MediaWiki extensions manual
OOjs UI icon advanced-invert.svg
Release status: unmaintained
LiquidThreads sample screenshot.jpg
Implementation Page action , Special page , API
Description Implements a structured discussion system
Author(s) David McCabe, Andrew Garrett
Latest version 2.2-alpha [1] (2014-03-28)
MediaWiki 1.29+
PHP 5.4+
Database changes Yes
Composer mediawiki/liquid-threads
Tables thread
License GNU General Public License 2.0 or later
Help Help:Extension:LiquidThreads/ja
  • $egLqtNamespaceNumbers
  • Merge threads (lqt-merge)
  • Reply to threads (lqt-react)
  • Split threads (lqt-split)
Quarterly downloads 4 (Ranked 161st)
Public wikis using 149 (Ranked 456th)
Translate the LiquidThreads extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

リキッド スレッド (LiquidThreads、LQT) は MediaWiki の拡張機能であり、議論ページにスレッド型議論システムを実装します。



2009年5月以来、ウィキメディア財団のアンドリュー・ギャレットが、元のリキッド スレッドのコードを大いに改良、増大させています。リキッド スレッド拡張機能の最新の安定したリリースは、LQT2.0であり、このページで解説しています。LQT2.0は、現在いくつかのウィキメディアのウィキで使用されているバージョンであり、戦略的計画プロセスでも使用されました。

2011年1月、リキッド スレッド 3.0 への作業がウィキメディア財団で開始されました。LQT3.0は現在、主導開発者アンドリュー・ギャレットと共に開発されていましたが、現在は停止しています。Development of LQT3 can be tracked in this branch; the last commits to LQT3 (lqt-updates) branch were in September 2011. Development by the Foundation has been discontinued.


リキッド スレッドがオプト イン (既定は切) となっているウィキ上で、特定のページのリキッド スレッドを入にするには、そのページのソースコードに次の文を加えてください。


リキッド スレッドがオプト アウト (既定が入) であるウィキ上で、特定のページでリキッド スレッドを切にするには、そのページのソースコードに次の文を加えてください。


包括的な使用法は、リキッド スレッドが操作仕様を最終決定した (あるいはほんの少し安定させた) 時点で、解説されるでしょう。


ウィキの議論ページには、ウェブ フォーラムや、Usenet フォーラムに勝るいくつかの長所があります:

  • 画像へのウィキリンクやトランスクルージョンといった、全てのウィキ構文が使用可能です。
  • 全体の議論ページを要約することができます。

ウェブ フォーラムは、MediaWiki の会話ページ様式に勝る、多くの長所があります:

  • 異なった表示形式でスレッドを表示できる。平坦、入れ子、日付順、件名順など。
  • 投稿に応じる場合、「返答」ボタン (リンク文字) をクリックするだけでよい。字下げを手書きで書き込む必要はない。自動的に元の投稿からの引用を挿入することができる。
  • 投稿は自動的に署名され、日付が挿入される。
  • アバター (ただし未作成)。
  • 利用者は、関わったスレッドを監視したり、スレッドへの返答の通知を受けることができる。
  • 投稿やスレッドを、周囲のページを省いて自分用に表示することができる。
  • 古いコメントは、自動的に邪魔にならないよう容易に利用可能な状態で固定リンク付きで格納される。
  • 投稿者や件名、日付等で検索可能
  • 各スレッドはカテゴリを持つことができる。
  • MediaWiki の会話ページでは必ず「1本文1協議」様式に従う。これに対し、本文に付随するフォーラムで関連する協議群を管理するのが、比較的簡単である。

リキッド スレッドは、両方のフォーラム様式の長所を組み合わせ、さらにいくつかの独特な議論機能を加えることを目指します。


Prerequisites: LiquidThreads currently requires the WikiEditor extension to be already installed. See bug 38654. To be able to properly search threads, Extension:Lucene-search must also be installed from Wikimedia's operations/debs/lucene-search-2.git repository.

  • Download and place the file(s) in a directory called LiquidThreads in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php :
    require_once "$IP/extensions/LiquidThreads/LiquidThreads.php";
  • Run the update script which will automatically create the necessary database tables that this extension needs.
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
Installing without command prompt access

Some individuals may not have command prompt access. However, if you have access through phpMyAdmin, substitute these steps for step #4 above:

  1. Download lqt.sql.
  2. In phpMyAdmin, click the database you're using for mediawiki along the left side
  3. On the next screen, click the "SQL" tab at the top.
  4. At "Location of the text file", choose one of the files, select compression "None", and click the bottom "Go" button.
    If your phpMyAdmin screen has only a text field and no text file chooser, click the "SQL" button in the left-side column, under the phpMyAdmin logo, and click the "import files" tab in the new window that opens.
    If you encounter the error message #1071 - Specified key was too long; max key length is 1000 bytes , abbreviate line 35 of lqt.sql to CREATE INDEX thread_article_title ON /*$wgDBprefix*/thread (thread_article_namespace, thread_article_title); (in other words, remove , thread_sortkey). Remove the new tables and import the file again.
    If your database uses table prefixes, you have to add them manually. You can do so after the new tables have been created.


This is the default configuration of the extension. You can override such values in LocalSettings.php:

// Preferences
$wgDefaultUserOptions['lqtnotifytalk'] = false;
$wgDefaultUserOptions['lqtdisplaydepth'] = 5;
$wgDefaultUserOptions['lqtdisplaycount'] = 25;
$wgDefaultUserOptions['lqtcustomsignatures'] = true;
$wgDefaultUserOptions['lqt-watch-threads'] = true;

// Permissions
$wgGroupPermissions['user']['lqt-split'] = true;
$wgGroupPermissions['user']['lqt-merge'] = true;
$wgGroupPermissions['user']['lqt-react'] = true;

/* Allows activation of LiquidThreads on individual pages */
$wgLqtPages = array();

/* Allows switching LiquidThreads off for regular talk pages
	(intended for testing and transition) */
$wgLqtTalkPages = true;

/* Whether or not to activate LiquidThreads email notifications */
$wgLqtEnotif = true;

/* Thread actions which do *not* cause threads to be "bumped" to the top */
/* Using numbers because the change type constants are defined in Threads.php, don't
	want to have to parse it on every page view */
$wgThreadActionsNoBump = array(
	3 /* Edited summary */,
	10 /* Merged from */,
	12 /* Split from */,
	2 /* Edited root */,
	14 /* Adjusted sortkey */

/** Switch this on if you've migrated from a version before around May 2009 */
$wgLiquidThreadsMigrate = false;

/** The default number of threads per page */
$wgLiquidThreadsDefaultPageLimit = 20;

/** Whether or not to allow users to activate/deactivate LiquidThreads per-page */
$wgLiquidThreadsAllowUserControl = true;

/** Whether or not to allow users to activate/deactivate LiquidThreads
	in specific namespaces.  NULL means either all or none, depending
	on the above. */
$wgLiquidThreadsAllowUserControlNamespaces = null;

/** Allow LiquidThreads embedding */
$wgLiquidThreadsAllowEmbedding = true;

// Namespaces in which to enable LQT
$wgLqtNamespaces = array();

/** Enable/disable the bump checkbox. **/
$wgLiquidThreadsShowBumpCheckbox = false;

/** Enable/Disable 'New messages' link and special page (Special:NewMessages) */
$wgLiquidThreadsEnableNewMessages = true;


API documentation


This extension does not work if your LocalSettings.php contains the following two parameter settings: $wgEnableAPI = false; and $wgEnableWriteAPI = false;