Help:Extension/Persistency

From Metabolomics.JP
Jump to: navigation, search
Extension Information
Implementation
Description
Author(s)K, Suwa
Version0.41
MediaWiki
License
Hooks used
Token typeParser 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}}}
  • 実行例


※ ログインしていないユーザでは反映結果は変わりません。

Requirements

Download

versionsourcemd5OperationCheck 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

  1. Download the source code and rename it to Persistency.php.
  2. Place it in the extensions/ directory.
  3. 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.
  4. $egTmpPath is a temporary place to save import xml file.

Function

  1. Persist

ChangeLog

0.41

  • 編集権限を持つユーザのタブで「edit」と出る部分が「view source」と表示されてしまうバグを修正しました。

0.4

  • 1.16.2に対応しました。

0.3

  • recursiveオプションを追加しました。

0.2

  • __UPDATE_ALL_PERSISTENCIES__と書いて保存することにより、対象ページをjobテーブルに保存し、ページの作成/更新を行います。
Personal tools
Namespaces

Variants
Actions
Navigation
metabolites
Toolbox