| メインページ > コンテンツ・マネジメント・システム(CMS) > MediaWikiの構築 > MediaWikiに機能追加(Extension) |
MediaWikiの機能拡張 ここに紹介しているExtensionは、すだちネット(自宅サーバー)でテスト結果を掲載しています。
最終更新:2009年11月8日 (日) 21:59 (JST)
目次 |
## Amazonお任せリンク
require_once("extensions/AmazonOmakase.php");
日本の商品を表示するためには、AmazonOmakase.phpを修正します。
http://www.assoc-amazon.com/s/ads.js
上記URLを下記のように変更します。
http://www.assoc-amazon.jp/s/ads.js
記事内に、下記のように挿入 <source lang="text"> <amazonomakase>
id=sudachi06-22 width=728 height=90 logo=hide discount=remove categories=a,b,c,d,e,f,g,h,i,j,k,l,m
</amazonomakase>
</source> 広告の幅と高さは、120×600、120×240、160×600、180×150、468×60、728×90、300×250、600×520から選びます。
カテゴリ名、名前空間、ページ名のパターン、編集日など様々な条件でページのリストを作成することができる。リストのフォーマットもいろいろと指定することができる。
require_once("extensions/DynamicPageList/DynamicPageList2.php");
メイン名前空間、ページ更新順に並べ、新しい順に10ページだけリスト表示するには、次のように書く。 <source lang="text">
</source>
注意:ここに設置したところ他のエクステンションに影響し正常に動作しません。
## GeSHiCodeTag extension
include("extensions/GeshiCodeTag.php");
ページ内で、Google検索フォームを簡単に設置できる機能拡張
include("extensions/Google.php");
設置したい記事内に、
<google></google>を記入
サイトマップ (sitemap.xml) を、Mediawiki の特別ページから作成することができる。
require_once('extensions/GoogleSitemap.php');
ノート(Discussion)ページを掲示板にする拡張機能
require_once("$IP/extensions/LiquidThreads/LiquidThreads.php");
“ノート”をクリックして、トークページを表示し、“新しい議論を始める”をクリックすることで、新しいスレッドを作成することができます。既存のスレッドを閲覧するには、“保存されているスレッドの閲覧”をクリックします。
新しくカテゴリーを作ったり、記事を既存のカテゴリーに入れたり、既存のカテゴリーへの所属を廃止したりしてして、カテゴリーの整理をする拡張機能。
require_once("extensions/managecategories/managecategories.php");
編集ページの下に、“Add Categories”というコーナーが現れます。
## 新着順のページのリストを作成
require_once( "{$IP}/extensions/NewestPages/NewestPages.php" );
最近追加したページ順に 10ページをリストする場合、次のように記述する。
{{Special:Newestpages/10}}
最近追加したページ順のうち、Main 名前空間のみ10ページをリストする場合。(Main 名前空間以外表示しない。)
{{Special:Newestpages/-/20}}
MediaWikiは、ユーザの名前変更が出来ないので、それを可能にしてくれる機能拡張
## ユーザの名前変更を可能にする
require_once( "{$IP}/extensions/Renameuser/SpecialRenameuser.php" );
導入が済めば、特別ページ(Special:Renameuser page)に名前変更の項目が追加される。
※たまたま動いただけで正しい設置の仕方かどうか疑問です。
$> cd extensions $> svn co http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/SyntaxHighlight_GeSHi
require_once( "$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php" ); require_once( "$IP/extensions/geshi/geshi.php" );
<source lang="<language>">ソースコードをここに</source>
<source lang="php">
<?php
$v = "string"; // sample initialization
?>
html text
<?
echo $v; // end of php code
?>
</source>
閲覧数の多い順に、記事タイトルを表示する機能拡張
include("extensions/TopTenPages.php");
<source lang="text"> トップ10を表示する場合。
<TopTenPages/>
トップ5を表示する場合。
<TopTenPages>5</TopTenPages>
オフセット
<TopTenPages offset=1/>
To show most popular (article-)talk-pages:
<TopTenPages namespace="talk"/>
</source> <toptenpages namespace="talk" />