|
本館粉絲專頁 |
|
|
使用者:台灣阿成/我的工作日誌/2006/01
台灣棒球維基館
目次 |
[編輯] 01/03 用戶貢獻程式改成編號清單
- 問題:點選用戶貢獻時,顯示為項目清單,無法一眼看出有幾項。如何解決?
- 方法:修改 SpecialContributions.php 程式:把 HTML 的 ul 改成 ol 即可
原來這樣: ... $wgOut->addHTML( "<ul>\n" ); ... $wgOut->addHTML( "</ul>\n" ); ... 改成這樣: ... $wgOut->addHTML( "<ol>\n" ); ... $wgOut->addHTML( "</ol>\n" ); ...
[編輯] 01/03 最近更改程式改成編號清單
- 問題:點選最近更改時,顯示為項目清單,無法一眼看出有幾項。如何解決?
- 方法:修改 ChangesList.php 程式:把 HTML 的 ul 改成 ol 即可
原來這樣: ... if( $this->rclistOpen ) { $s .= "</ul>\n"; } ... if ( $date != $this->lastdate ) { if ( '' != $this->lastdate ) { $s .= "</ul>\n"; } $s .= "<h4>{$date}</h4>\n<ul class=\"special\">"; ... 改成這樣: ... if( $this->rclistOpen ) { $s .= "</ol>\n"; } ... if ( $date != $this->lastdate ) { if ( '' != $this->lastdate ) { $s .= "</ol>\n"; } $s .= "<h4>{$date}</h4>\n<ol class=\"special\">"; ...
[編輯] 01/03 作者不顯示真名
- 修改 Credits.php,把本來會顯示出作者真名的功能去掉:
function getAuthorCredits($article) { ... if (!empty($real_name)) { //原本: // $author_credit = creditLink($user_name, $real_name); //改成: $author_credit = creditLink($user_name); ... function getContributorCredits($article, $cnt, $showIfMax) { ... if ($wgAllowRealName && !empty($user_parts[2])) { //原本: // $real_names[] = creditLink($user_parts[1], $user_parts[2]); //改成: $real_names[] = creditLink($user_parts[1]);
- 問題:頁面下方顯示近期三位作者之外,「其他...」點進去應看到所有作者,但沒有。
- 方法:
- index.php(加傳一個參數 $action)
//原本: showCreditsPage( $wgArticle ); //改成: showCreditsPage( $wgArticle, $action );
- Credits.php
//原本: function showCreditsPage($article) { ... if( $article->mTitle->getArticleID() == 0 ) { $s = wfMsg( 'nocredits' ); } else { $s = getCredits($article, $wgMaxCredits, $wgShowCreditsIfMax); } //改成: function showCreditsPage($article, $action) { ... if( $article->mTitle->getArticleID() == 0 ) { $s = wfMsg( 'nocredits' ); } else { if( !isset($action) ){ $s = getCredits($article, $wgMaxCredits, $wgShowCreditsIfMax); } else { $s = getCredits($article, -1, $wgShowCreditsIfMax); } }
- 問題:單一作者無法換行。
- 解決:
function getContributorCredits($article, $cnt, $showIfMax) { ... //原本: return (empty($creds)) ? '' : wfMsg('othercontribs', $creds); ... //改成: return (empty($creds)) ? '<br>' : wfMsg('othercontribs', $creds);
[編輯] 01/04 actionLogs新增記錄Login使用者的IP
- 問題:若使用者有登入(Login),目前在actionLogs中只記錄其Username而未紀錄IP,以致若發生頁面遭受登入使用者破壞,將無從追查該使用者來自何處。
- 解決:加入記錄登入使用者IP的功能。
//index.php //原本: ... if ( isset( $_SESSION['wsUserName'] ) ) { $sUser = "User" . "," . $_SESSION['wsUserName']; } else { $sUser = "IP" . "," . $wgIP; } ... //改成: ... if ( isset( $_SESSION['wsUserName'] ) ) { $sUser = "User" . "," . $_SESSION['wsUserName'] . "," . $wgIP; } else { $sUser = "IP" . "," . $wgIP . ",----"; } ...
- 結果:
2006-01-04,08:00:48,User,台灣阿成,61.229.225.97,view,首頁,719902 2006-01-04,08:00:49,IP,218.162.120.225,----,view,張志強,173
[編輯] 01/04
- swdsyu通過畢業論文口試。
[編輯] 01/05
- 把頁面作者、最近更改、瀏覽次數一到頁面標題下方。
- 修改程式:monobook.php, monobook/main.css
- 修改相關mediawiki參數:
- MediaWiki:Lastmodifiedby/zh-tw
- MediaWiki:Othercontribs/zh-tw
- MediaWiki:Lastmodified/zh-tw
- MediaWiki:Viewcount/zh-tw
- 未解決問題:除Namespace 0 的頁面外,其餘Namespace的頁面只會顯示一位作者。
[編輯] 01/07
- 下午6點半左右發現本站連不上,就遠端登入進去看。發現MySQL當掉,想要把它停掉再重新啟動,但是停不了,也無法重新啟動。進去看了actionLog,發現5點1分以後就沒有任何紀錄了,也就是我發現時已經當掉一個半小時了。
- 打電話到研究室求救兵看有沒有人可幫忙重開?但是想也知道,天氣這麼冷怎麼會有人?沒辦法,只好等到星期一早上有人上班再處理了。
- 晚上10:15左右,不死心又試著打一次研究室,結果非常幸運有同學在,我請她幫忙重開電腦後就恢復正常了。
- 今天自05:00pm ~ 10:15pm總計當機五小時多。
- 看樣子Win XP + MySQL並不是很穩,這個組合經常會當掉,應該想辦法改善。
--台灣阿成 22:31 2006年1月7日
[編輯] 01/25
- 頁面數量突破4,000頁了,不過個人覺得「量」並不是最重要,「質」也同樣重要。
- 更改Mediawiki:sitenotice/zh-tw,希望可在每頁頁眉顯示這個導覽條(先粗略設計,有空再慢慢改):
- 沒有反應!?可能要等server上的cache清空才會出現吧!回頭查看Mediawiki:sitenotice/zh-tw,果然還是舊的「-」。怎麼常這樣?
- 問題:為什麼Mediawiki:xxx系統介面變數經常會延遲反應?server上的cache是在哪裡?
[編輯] 01/26
- 乾脆重開機一下,終於有出現了!再把幻象兩千作的本土球員和外籍球員點將錄合成中華職棒點將錄,也一併放上去。
- 作這個導覽條主要是把原來的「建議閱讀」和一些主要頁面當作全域導覽,讓使用者在任何頁面都可連結。把「建議閱讀」移走後,頁面空間也可以騰出來放其他資料。
[編輯] 01/27
- 在使用者列表(依ID),另顯示註冊日期:
- SpecialListUsersbyid.php:
function getSQL() { //... return "SELECT ur_rights as type, $userspace as namespace, user_name as title, user_id as value, user_regdate as regdate FROM $user LEFT JOIN $user_rights ON user_id = ur_user"; //多這一欄: user_regdate as regdate // ... }
function formatResult( $skin, $result ) { // ... $rd = substr($result->regdate, 0, 4) . '/' . substr($result->regdate, 4, 2) . '/' . substr($result->regdate, 6, 2); //... //原來:$name .= ' (id=' . $result->value . '; ' . //改成: $name .= ' (id=' . $result->value . '; ' . 'regdate=' . $rd . ')(' . $skin->makeLink( wfMsgForContent( 'administrators' ), $result->type) . ')'; //... //原來:$name .= ' (id=' . $result->value . ')' ; //改成: $name .= ' (id=' . $result->value . '; ' . 'regdate=' . $rd . ')' ;} //... }