學習MediaWiki筆記

來源:互聯網
上載者:User

開放本地圖片上傳
【版本1.5.X及更高版本】取消這一行的行首#號

# $wgEnableUploads   = true;
【版本1.4.X】取消第3行和第6行的注釋(即行首的#號)

## To enable image uploads, make sure the 'images' directory
## is writable, then uncomment this:
# $wgDisableUploads   = false;
$wgUseImageResize   = true;
# $wgUseImageMagick = true;
# $wgImageMagickConvertCommand = "/usr/bin/convert";
Template:Notice請不要使用windows內建的記事本改程式!mediawiki使用utf-8格式儲存程
序,記事本會在檔案開始多出三個位元組,而這會導致網站運行出錯。推薦使用EmEditor進行
編輯(另存新檔utf-8,不要unicode標記)。

如何增加上傳檔案功能?
我需要增加上傳PDF,CAJ,WORD檔案功能,最好還能下載,請教?
在wiki/inclueds/defaultsetings.php 找出到下面這一段,它限制了哪些類型檔案(png,gif,jpg,jpeg)可 以上傳,哪一類型(html,htm......)不能上傳,依照您的需要更改它,然後貼到localsetings.php的最下面即 可
/**
* This is the list of preferred extensions for uploading files. Uploading files
* with extensions not in this list will trigger a warning.
*/
$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg' );
/** Files with these extensions will never be allowed as uploads. */
$wgFileBlacklist = array(
# HTML may contain cookie-stealing JavaScript and web bugs
'html', 'htm', 'js', 'jsb',
# PHP scripts may execute arbitrary code on the server
'php', 'phtml', 'php3', 'php4', 'phps',
# Other types that may be interpreted by some servers
'shtml', 'jhtml', 'pl', 'py', 'cgi',
# May contain harmful executables for Windows victims
'exe', 'scr', 'dll', 'msi', 'vbs', 'bat', 'com', 'pif', 'cmd', 'vxd', 'cpl' );

 

修改網站LOGO
想要將左上方的mediawiki表徵圖替換為自己的表徵圖,可以在skins/common/images/目錄下找
到名為“wiki.png”的圖片檔案,將它替換為自己的圖片即可。

標籤及其他系統提示、連結的修改
進入Special:Allmessages頁面(在特殊頁面中可以找到,一般翻譯為“系統介面”,本站
則修改為“介面定製”標題)
在這個頁面上,左側是該資訊所在的網址,中間是系統初始設定,右側是當前設定。搜尋網頁
面,找到要修改的字串,點左側相應的連結。

修改左側導航條
當需要在mediawiki左側導航條的內容時,請在搜尋欄中輸入“mediawiki:sidebar”,然後
進行編輯(需要以站長或管理員身份登入)。
第一行(一個前置*)表示導覽列的名稱,其提示文本在“mediawiki:navigation”頁面中
修改,也可以直接輸入文字資訊(文字不能與內部mediawiki參數頁面重名)。
使用者可根據需求刪除/增加mediawiki:sidebar頁面中的項目,修改後左側導覽列就會發生相應改變。(本方法適用於mediawiki預設的monobook皮膚風格)

新增左測導航條
<div id="p-function" class="portlet">
   <h5>主題分類</h5>
   <div class="pBody">
   <ul>
   <li id=function><a href="
http://ra.sz.webex.com/rawiki/index.php/%E9%A1%B9%E7%9B%AE%E6%96%87%E6%A1%A3">項目文檔</a></li>
<li id=function><a href="
http://ra.sz.webex.com/rawiki/index.php/SITE_%E9%93%BE%E6%8E%A5">Site連結</a></li>
<li id=function><a href="
http://ra.sz.webex.com/rawiki/index.php/Environment%E4%BF%A1%E6%81%AF">Environment資訊</a></li>
<li id=function><a href="
http://ra.sz.webex.com/rawiki/index.php/%E4%BA%A4%E6%B5%81%E5%AD%A6%E4%B9%A0">交流學習</a></li>
<li id=function><a href="
http://ra.sz.webex.com/rawiki/index.php/%E6%8A%80%E6%9C%AF%E6%96%87%E6%91%98">技術文摘</a></li>
<li id=function><a href="
http://ra.sz.webex.com/rawiki/index.php/%E5%85%B6%E4%BB%96%E4%BF%A1%E6%81%AF">其他資訊</li>
   </ul>
   </div>
   </div>

增加友情連結側欄
想在mediawiki工具列下方添加友情連結,請開啟skins/Monobook.php,找到如下兩行:
<?php if( $this->data['language_urls'] ) { ?><div id="p-lang" class="portlet">
   <h5><?php $this->msg('otherlanguages') ?></h5>

在前面添加:

<div class="portlet" id="p-tb">
   <h5>友情連結</h5>
   <div class="pBody">
     <ul>
   <li id="feedlinks""><a href="http://www.allwiki.com" target="_blank"><img src="http://www.allwiki.com/images/allwiki_logo.gif" border="0" alt="天下維客" /></a></li>
   <li id="feedlinks""><a href="http://zh.wikipedia.org" target="_blank"><img src="http://upload.wikimedia.org/wikipedia/zh/c/ce/Wiki_button.png" border="0" alt="中文維基百科" /></a></li>
     </ul>
     </div>
</div>
請根據需要,修改上面內容中的連結、圖片網址和alt字串(文字提示)。

注意:①上述內容必須使用UTF-8格式進行存檔,否則漢字顯示亂碼;②本修改只針對預設的monobook風格。

介面資訊修改
MediaWiki的大部分介面資訊存放在Special:Allmessages裡面,包括介面的文字、連結、氣泡提示、熱鍵等。進行定製時,請找到相應資訊,點擊左欄連結進行修改。

mediawiki皮膚的安裝、使用
用到的檔案
一般來說,下載來的皮膚包中包含xxx.php、xxx.deps.php與一個xxx子目錄這三部分
(早期的皮膚可能沒有xxx.deps.php檔案)
拷貝到哪裡
將上述檔案拷貝到mediawiki的/skins目錄下即可
如何使用
檔案拷貝後即可生效!調用方法為:登入,進入參數設定(Special:Preferences)頁面,在皮膚中選擇後儲存即可。
(註:非註冊使用者無法選擇皮膚)
設定為預設風格
如果希望皮膚能對所有使用者都生效,那麼可以在將其設為預設皮膚,之後匿名使用者等都將預設使用這種風格。
方法:修改localsettings.php,在文尾“?>”之前增加如下一行:
$wgDefaultSkin = 'xxx';

建立新文章、新詞條
利用搜尋功能建立新頁面
當你使用頁面左側的搜尋方塊中尋找標題沒找到時,可在提示中點擊建立文章的連結建立新頁面。

[編輯] 建立頁面存在連結的文章
如果您發現戰錘百科本文中有棕紅色的連結,則表明該條目中還沒有內容,您可以點擊它來編輯新的條目,儲存後就自動建立新頁面;如果需要自行建立新頁面,請隨意編輯某個頁面並輸入“[[新條目名稱]]”,點擊“顯示預覽”按鈕後即可按前面所述進行操作。

[編輯] 縮排與列表
mediawiki中的縮排不能使用半形空格調整。有以下幾種方式控制縮排格式縮排:(舉例附後)
行首使用半形:號:允許多個半形冒號連用,以控制不同文本縮排深度
行首使用半形*號:行首星號是列表控制符,產生列表的同時伴有不同的文本縮排。允許多個星號連用。
行首使用半形#號:數字序號的列表控制符,與星號類似。注意,多個#號行中夾有非#號起始的文本行時,數字序號會中斷。
使用;與:號配合:分號與冒號稱為“定義列表”控制符,冒號之後的部分換行縮排顯示。
行首使用全形空格:一種非正規手段,注意不要濫用。

段落調整
關於空開段與段的間隔
wiki文本中,單獨斷行符號並不會出現換行。為強制換行,可以:
1、增加空行會分開不同的段落
2、在換行位置使用強制換列標籤“br”
如左圖1所示,如果需要段與段時間空行,只需在前段末尾加上"br”"br",將“換為<>,如右圖2所示。
關於首行空兩格
如果遵循中文書寫習慣,需要在首行前空兩格,可以在首行前端輸入“全形”的空格符,即可實現如1效果。

如何插入圖片,調整
1、當圖片位於本機(沒有網址可供調用)時,要把圖片在Special:Upload頁面上傳後才能使用。(該頁面的連結可在“特殊頁面”中找到,標註為“上傳檔案”)。
2、:圖片檔案不能使用中文名稱,應在上傳時指定為英文名稱。 3、將圖片上傳後,在需要插入圖片的位置輸入“[[Image:Filename.jpg]]”即可(Filename為上傳圖片的檔案名稱),即可出現如左圖3無方框圖片效果,如果需要添加方框效果,可以輸入“[[Image:Filename.jpg|thumb]]”添加圖片方框。
3、對於上傳到本站的圖片,還可以隨意指定顯示大小、左右位置、添加解說文字等,請參看Mediawiki中映像的使用。

[編輯] 目錄控制
當文章中含有3個以上標題時,mediawiki將自動在第一個標題之前組建目錄(這是預設的設定)。
如果需要隱去目錄,可以在文章中加入“__NOTOC__”標記;
如果需要強制顯示目錄而不管標題數量,可以加入“__TOC__”標記;
這兩個wiki標記不限制出現位置,但一般出現在文章頭部或尾部且單獨成行。

[編輯] 文章分類
在文本中嵌入“[[category:文章分類]]”的文字,會使本文自動歸類到“文章分類”下面。一般習慣在文章末尾放置該語句;同一篇文章可以設定多個分類。
編輯完成後,點擊本文頁面下端的分類名稱,可以進入該分類頁面查看更多的同類文章。同時,分類頁面中也可以進行編輯,以進行必要的說明。

分類是mediawiki中一種重要的內容關聯手段。
分類將同類文章在同一個頁面上集中起來,為讀者提供查看相關資料的方便
mediawiki的分類還有上、下級關係,使內容關聯更有層次
[[category:XXX]]
儲存之後這篇文章就會自動被分類為XXX。

分類說明文本一般被放在文章末尾,但實際上它可以位於文章的任何部分。
一篇文章可以有多個分類,順序書寫即可。例如文章同時在XXX、YY分類中出現:
[[category:XXX]]
[[category:YYY]]
如何引用一個分類頁面的網址
在mediawiki文章中連結分類頁面正確的寫法是[[:category:XXX]],顯示時不會顯示前置冒號
上傳圖片也可以分類
通過對上傳圖片的分類,可以讓更多人瞭解系統中有哪些圖片,方便在文章中引用,並大量減少重複圖片的上傳。
上傳圖片之後,編輯該頁面並輸入[[category:分類名稱]]然後儲存,則訪問這個分類頁面時就能看見該圖片的索引了

表格的基礎用法
{|
| 第1行第1列 || 第1行第2列 || 第1行第3列
|-
| 第2行第1列 || 第2行第2列 || 第2行第3列
|-
| 第3行第1列 || 第3行第2列 || 第3行第3列
|}
說明:“{|”、“|}”是表格的頭尾,“|-”代表表格換行,“|”引導表格行內容並以“||”分開不同儲存格
注意:表格控制符必須在行首書寫!非行首表格代碼將不被認可
儲存格內容可包含連結、圖片等,以及嵌套內部表格。
mediawiki的預設表格沒有邊框,如果需要的話需添加參數。(見下文介紹)
border="1" cellspacing="0" 是邊框樣式,不寫的話就不出邊框

http://www.foodbk.com/wiki/Wikipedia:%E4%BD%BF%E7%94%A8%E8%A1%A8%E6%A0%BC
讓一行、一列或一整個表格都是同樣的顏色
{| style="background:yellow; color:blue" border=1
|-
| 這行是
| 藍字
| 黃背景
|- style="background:navy; color:white"
| 這行是
| 白字
| 深海藍
|-
| 這行
| style="background:white" | 比較
| 不一樣
|}

Mediawiki的邊框效果
漂亮的頁面配置,離不開各種邊框的使用。通過不同樣式的邊框,可以讓不同的內容板塊一目瞭然,有效改進頁面的可讀性。
邊框樣式的基礎實現有兩種:
div邊框
表格邊框
<div style="width:100px;background-color:#FF0000;border:5px solid #FFFFFF;">
測試
</div>

 

solid單線邊框
border:1px solid #808080
常用邊框之一,推薦

dashed虛線邊框
border:1px dashed #808080
常用邊框之一,推薦

double雙線邊框
border:3px double #808080
常用雙線邊框之一,推薦

編輯格式:
'''粗體文字'''
''斜體文字''
[[連結標題]] 內部連結
[http://www.example.com 連結標題] 外部連結
== dfd == 二級標題字導航
[[Image:Example.jpg]] 嵌入檔案

當文章中含有3個以上標題時,mediawiki將自動在第一個標題之前組建目錄(這是預設的設定)。

使編輯的時候出現虛線框,使重要的內容顯示比較醒目,只要在開頭加上一個空格就可以了(這裡的空格必須是半形下的才可以

Mediawiki的頁面分類
在mediawiki中,在編輯文章時輸入
[[category:XXX]]
儲存之後這篇文章就會自動被分類為XXX。
分類說明文本一般被放在文章末尾,但實際上它可以位於文章的任何部分。
一篇文章可以有多個分類,順序書寫即可。例如文章同時在XXX、YY分類中出現:
[[category:XXX]]
[[category:YYY]]

如何引用一個分類頁面的網址
格式為[[:category:XXX|解說文字]],例如文本中的“[[:category:wiki|天下維客的wiki文章索引]]”將顯示為天下維客的wiki文章索引。

模板
引用模板 {{模板名稱}}
建立或者編輯模板 [[Template:模板名稱|頁面顯示文字]]

Mediawiki的頁面使用權限設定
禁止新使用者註冊
在LocalSettings.php的位置加入:

#Prevent new user registrations
$wgWhitelistAccount = array ( "user" => 0, "sysop" => 1, "developer" => 1 );
此時使用者無法自助式註冊。管理員可以到登入頁面(Special:UserLogin)裡,輸入一個使用者名稱和email,然後點擊“by email”,系統建立帳號並將隨機密碼發送到指定email裡。

禁止匿名使用者編輯
在LocalSettings.php加入
1.5版本:
以下等式右側的值決定各群組成員的許可權。左側第一方括弧內的'*'代表包括匿名使用者在內的所有成員。登入使用者控制存放在'user'組,這些將綜合決定user_groups資料表中的成員許可權。
這些設定取代了以前的wgWhitelistAccount和wgWhitelistEdit。
#$wgGroupPermissions = array();
$wgGroupPermissions['*'    ]['createaccount']   = false;
$wgGroupPermissions['*'    ]['read']            = true;
$wgGroupPermissions['*'    ]['edit']            = false;
以上例子中禁止了匿名使用者的自行建立賬戶和進行編輯。(“編輯”標籤仍會顯示,但匿名使用者點擊時會被提示要求進行登入。

設定匿名使用者(未登入)可以看到的頁面
上述設定之後,使用者連首頁和登入頁面也看不到了。因此需要繼續修改在LocalSettings.php中加入:
$wgWhitelistRead = array ("Main Page", "Special:Userlogin", "Wikipedia:Help");
這樣,匿名使用者只能看到Main Page、登入頁面以及協助頁面。注意根據自己網站的情況修改上述設定,例如改為:
$wgWhitelistRead = array ("首頁", "Special:Userlogin", "某某Wiki:Help");
對於多位元組語言(例如中文),PHP parser可能不能正確解碼。這時可能要用到PHP的urldecode()函數來轉換一下:
#中文的“首頁”編碼
$wgWhitelistRead = array( urldecode("%E9%A6%96%E9%A1%B5") ;

頁面保護的方法
以管理員(sysop)身份登入
點擊頁面上方的的保護(或protect)標籤
如,選擇第三行的Sysop only,然後確認即可。
保護完成後,該頁面只能被sysop(管理員)修改。
Image:Mediawiki protect.png mediawiki的頁面保護
如果僅僅希望屏蔽匿名修改,則請在第三步時選擇第二行。這種情況下允許登入使用者、管理員對該頁面的編輯。
解除保護:操作過程完全類似,只是第二步時標籤為“解除保護”,第三步時選擇第一行。
頁面保護僅適合少量頁面的保護。
如果希望所有頁面都禁止匿名修改,則請參考mediawiki的使用者權限,對匿名使用者的許可權進行限制。

How do I remove a tab on only one page?
http://www.mediawiki.org/wiki/Manual:FAQ#How_do_I_customize_the_navigation_bar.3F

 

我想做出頁面下顯示針對條目的討論內容顯示的功能
在頁面下方增加一個名為{{討論}}的模板,模板內容你可以參考模板:討論
{| style="width:100%; border:1px solid #cef2e0; background-color:#f5fffa;"
| style="background-color:#f5fffa;"|'''使用者留言:'''
|-
| style="background-color:#ffffff;"|{{#ifexist:{{TALKPAGENAME}}|:
{{ {{TALKPAGENAME}} }}|目前暫無留言}}
|-
|[{{fullurl:{{TALKPAGENAME}}|action=edit&section=new&preload=Template:Sign&editintro=Template:SignNotice}} 新增留言] [{{fullurl:{{TALKPAGENAME}}|action=edit}} 編輯留言]
|}
<noinclude>[[Category:模板]]</noinclude>

如果你的模板不支援ifexist,需要安裝模板擴充文法擴充.Extension:ParserFunctions
http://www.mediawiki.org/wiki/Extension:ParserFunctions

加姓名與日期,增加~~~~

 

RSS擴充:
可以在頁面中嵌入新聞內容,還比較實用、方便
下載安裝media wiki的RSS newsfeeds外掛程式
http://www.mediawiki.org/wiki/Extension:RSS
將代碼安裝到mediawiki的extensions目錄下,並且LocalSettings.php中啟用外掛程式
include(”extensions/rss.php”); #rss.php為外掛程式的檔案名稱
外掛程式需要php的rss解析器的支援,比如
magpie rss parser :http://magpierss.sourceforge.net/
iconv: http://www.php.net/iconv
Check that iconv is installed; this can be done with a simple phpinfo();
預設情況下,magpie顯示中文會有亂碼,需要將編碼顯示設定為utf-8,另外為了改善效能,可以修改預設的緩衝設定。
require_once("rss_fetch.inc");
// specify output encoding default is ISO-8859-1
define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');;
define('MAGPIE_FETCH_TIME_OUT', 60 * 180);
注意:兩個define語句一定要緊跟在requrie後面,開始我加在rss.php的檔案頭,怎麼也不生效.

頁面引用樣本:

[http://news.google.cn/news?hl=zh-CN&ie=UTF-8&q=蘇州 蘇州 - Google資訊] <rss>http://news.google.cn/news?hl=zh-CN&ie=UTF-8&q=蘇州&output=rss|charset=UTF-8|short|max=8|title=none</rss>

事件倒計器. <eventcountdown>
<eventcountdown date="8-8-2008"><daysuntil in="days">8-8-2008</daysuntil></eventcountdown>
example:
'''T27L Internal ER date is 8/20/08,離現在還有<font color="#ff0000"><eventcountdown date="20-8-2008"><daysuntil in="days">20-8-2008</daysuntil></eventcountdown></font>'''

 

 

MediaWiki擴充-FCKeditor
一直以來。苦於Mediawiki本身內建的難用的編輯器。安裝了FCKeditor編輯器,終於可以擺脫mw內建的編輯器了。。記錄一下安裝過程。。
Modify configuration file
After you have put the FCKeditor extension in the correct directory, add this line at the end of LocalSettings.php:
require_once $IP . "/extensions/FCKeditor/FCKeditor.php";
修改includes/EditPage.php檔案
尋找:
$wgOut->addHtml( wfHidden( 'wpAutoSummary', $autosumm ) );
if ( $this->isConflict ) {
替換為:
$wgOut->addHtml( wfHidden( 'wpAutoSummary', $autosumm ) );
if ( $this->isConflict && wfRunHooks( 'EditPageBeforeConflictDiff', array( &$this, &$wgOut ) )) {

修改includes/Sanitizer.php檔案
尋找:
return count( $attribs ) ? ' ' . implode( ' ', $attribs ) : '';
替換為:
if ( !wfRunHooks( 'SanitizerAfterFixTagAttributes', array( $text, $element, &$attribs ) ) ) {
return '';
}
return count( $attribs ) ? ' ' . implode( ' ', $attribs ) : '';
至此。全部修改完畢。已可以正常使用fckeditor編輯器。
PS:Download FCKeditor extension
http://mediawiki.fckeditor.net/index.php/Main_Page#Download_it.21

如何清除頁面緩衝?
在LocalSettings.php中設定$wgCacheEpoch全域變數,強制現有緩衝到期(參見DefaultSettings.php)
$wgCacheEpoch = 'date +%Y%m%d%H%M%S';

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.