Help:Extension/Persistency
From Metabolomics.JP
Extension Information | |
Implementation | |
Description | |
Author(s) | K, Suwa |
Version | 0.41 |
MediaWiki | |
License | |
Hooks used | |
Token type | Parser function |
Contents |
Persistency is achieved by Persist link and Persist namespace. This function is allowed only for logged-in users. See also Volatile.
- Persist link
- [[Persist:name|template|params|name]] specifies a page title in Persist namespace, a template, and its parameters. In the specified page, the template is expanded with the parameters and its wiki code is saved as the page contents (without cash).
- Persist namespace
- There is no need to create pages. When a specified page title exists, the contents will be overwritten.
- __UPDATE_ALL_PERSISTENCIES__
- Persistencyはログインユーザがボタンをクリックした時に、ページの作成・更新を行います。しかし大量にページを作成したい場合、一つ一つクリックして作成するのは時間がかかるため、mediawiki自体にページの作成を依頼することができます。この文字列を書いてページを保存すると、作成するページを全てwikiデータベースのjobテーブルに挿入し、遅延作成・更新を行ってくれます。
Example
{{#persist:作成・更新するPersist名前空間のページ名|表示名|テンプレート名|引数の数|引数|引数のセパレータ(=;)|再帰展開するか(=true)}}
一つ目の例は、テンプレートを再帰的に展開するもので、二つ目は一度だけ展開して保存するものです。
- ソース
{{#persist:Test_recursive|click me(recursive)|PersistTest|1|PerRec|;|true}} {{#persist:Test_non_recursive|click me(non recursive)|PersistTest|1|PerNonRec|;|false}}
- テンプレートソース
- Template:PersistTest
First persist {{PersistTest2|{{{1}}}}}
- Template:PersistTest2
Second persist data is {{{1}}}
- Template:PersistTest
- 実行例
※ ログインしていないユーザでは反映結果は変わりません。
Requirements
Download
version | source | md5 | OperationCheck version |
0.41(February 22,2011) | Persistency.phps | 22877c0d98744f74294f0ebe86ba59d5 | 1.16.2 |
0.4(February 18,2011) | Persistency-0.4.phps | eccc046fedebbad66c5abefd7f670220 | 1.16.2 |
0.3(March 5,2010) | Persistency-0.3.phps | adba9c4b3b5e530e7d1b80e4cc78217b | 1.11.1 |
0.2(December 4,2008) | Persistency-0.2.phps | 7710adada75055803559dc5cd01b1e82 | 1.11.1 |
Installtion
- Download the source code and rename it to Persistency.php.
- Place it in the extensions/ directory.
- Insert the follow lines to LocalSettings.php
require_once( "$IP/extensions/Persistency.php" ); $egPhpBin = "path to php binary"; // ex. /usr/bin/php $egTmpPath = "path to tmp directory"; ( default: "/tmp" ) $wgExtraNamespaces = array( ... xxx => "Persist", xxx+1 => "Persist_Talk", ... );
$egPhpBin is required. Use 100 or larger numbers for xxx.
$egTmpPath is a temporary place to save import xml file.
Function
ChangeLog
0.41
- 編集権限を持つユーザのタブで「edit」と出る部分が「view source」と表示されてしまうバグを修正しました。
0.4
- 1.16.2に対応しました。
0.3
- recursiveオプションを追加しました。
0.2
- __UPDATE_ALL_PERSISTENCIES__と書いて保存することにより、対象ページをjobテーブルに保存し、ページの作成/更新を行います。