최근(2009. 2. 9)에 릴리즈 된 Moniwiki 1.3.1 버전을 설치하는 방법에 대해 설명한다. 이번 버전에서 가장 눈에 띄는 기능을 꼽자면, 페이지 편집 시 위지익을 지원한다는 점일 것이다.
또한 기존의 버그들이 수정된 점이라 하겠다. 현재 사용하고 있는 1.2 버전에서 1.3.1 버전으로 업그레이드하기 위해서 해야할 것들을 정리해보겠다.
업그레이드 시에 염두해두어야 할 점들은 다음과 같다.
- 폰트(굴림체, 9)
- 화면 인터페이스(달력, 단축키, 페이지 권한 설정)
- 인코딩(ecu-kr → utf-8)
설치하기
1.3.1 역시 설치 방법은 기존 1.2 버전과 동일하다. 설치시 유의할 점이 있다면, wikiseed 를 반드시 설치해야 한다는 것이다.
테마 및 폰트 변경하기
config.php 파일을 아래와 같이 수정한다.
$theme='blog'; $theme_css=1;
위의 설정으로 인해, 각 테마와 CSS 를 수정할 수 없고 blog 테마로 고정되게 된다.
폰트 수정은 css 파일을 수정함으로서 가능하다. 파일은 moniwiki/theme/blog/css/default.css 파일이다.
body { font-family: gulim; font-size:9pt; color:block; line-height:150%; background-color:#90B7DC; color:#000; margin: 0; padding: 0; } a:link { color: #369;} a:visited { color: #369;} /* a:hover {background-color:#999966;color:white} /* */ .wikiTitle { font-family: gulim; font-size:9pt; color:block; line-height:150%; font-weight:bold; color:#ffffff; /* */ /* color: #7B7D5A; /* */ text-decoration: none; } tt.wiki {font-family: gulim; font-size:9pt; color:block; line-height:150%;} tt.foot { font-family: gulim; font-size:9pt; color:block; line-height:150%; vertical-align: super; } tt.sister { font-family: gulim; font-size:9pt; color:block; line-height:150%; vertical-align: super; text-decoration: none; } pre.wiki { padding-left:6px; padding-top:6px; font-family: gulim; font-size:9pt; color:block; line-height:150%; background-color:#000000; color:#FFD700; /* gold */ } pre.console { background-color: #000000; color: #E0E0E0; padding: .25em ; border: 2px inset #808080; } pre.quote { padding-left:6px; padding-top:6px; white-space:pre-wrap; white-space: -moz-pre-wrap; font-family: gulim; font-size:9pt; color:block; line-height:150%; background-color: #E9ECEF; } table.wiki { /* background-color:#E2ECE5;*/ /* border-collapse: collapse; */ border: 0px outset #ddddb0; } td.wiki { background-color: #E9ECEF; /* border-collapse: collapse; */ border: 0px inset #E2ECE5; } textarea.wiki { width:100%; } th.info { background-color:#E2ECE2; /* border-collapse: collapse; */ /* border: 1px solid silver; */ } td.info { background-color:#E2ECE2; } h1,h2,h3,h4,h5 { font-family: gulim; font-size:9pt; color:block; line-height:150%; padding-left:6px; border-bottom:1px solid #999; } td,tr,a,caption { font-family: gulim; font-size:9pt; color:block; line-height:150%; } div.diff-added { font-family: gulim; font-size:9pt; color:block; line-height:150%; background-color:#E0FFE0; color:black; } div.diff-removed { font-family: gulim; font-size:9pt; color:block; line-height:150%; background-color:#E9EAB8; color:black; } div.diff-sep { font-family: gulim; font-size:9pt; color:block; line-height:150%; background-color:#000000; color:#FFD700; /* gold */ } span.diff-added, ins.diff-added { color:black; background-color: #60FF60; text-decoration: none; } span.diff-removed, del.diff-removed { color:black; background-color: #FF0000; } div.message { margin-top: 6pt; background-color: #E8E8E8; border-style:solid; border-width:1pt; border-color:#990000; color:#440000; padding:0px; width:100%; } .highlight { background-color:#FFFF40; } table.goto { background-color: #002B2C; } span.goto, input.goto { font-family: gulim; font-size:9pt; color:block; line-height:150%; } table.closure, td.closure{ background-color: #E9ECEF; } /* */ .wikiHr { border:0px solid; padding: 0px 0px; /* */ margin-top:0px; height:1px; /* background: #000 url(hr1.gif) no-repeat scroll center; */ } #wikiTrailer { padding-left: 20px; padding-bottom: 5px; } #wikiHeader { /* border-left: 0.8em solid #7B9AC5; /* */ color: #fff; padding: 0.2em 0em 0.2em 0.2em; background-color:#69c; } #wikiHeader a:link {color:#fff;} #wikiHeader a:visited {color:#f2f2f2;} #wikiBody { color: black; background-color: #fff; border: 2px solid #69C; /* border-left: 0.8em solid #E2ECE2; border-right: 0.8em solid #E2ECE2; */ /* border-left: 0.8em dotted; /*solid #6A2525; */ /* border-right: 0.8em solid #6A2525; */ /* text-transform: lowercase; /* */ margin: 0px 10px 0px 10px; padding: 5px 1em 5px 1em; /* margin-left: 20px; */ /* padding-left: 1em; /* */ /* text-indent: 10px; */ /* border: 0px outset #E2ECE5; */ /* font-size:16px; border-collapse:collapse; */ } #wikiBody a:link { color: #39c; } #wikiBody a:visited { color: #369; } #wikiBody a:hover { border-bottom: 1px solid #369; } #wikiContent { margin-left: 20px; } #wikiFooter { padding: 0.5em 2em; /* background-color:yellow; */ } #wikiHint { font-family: gulim; font-size:9pt; color:block; line-height:150%; background-color:#E2DAE2; } #wikiSister { /* background-color:lightgreen; /* */ } #wikiPreview { border: 2px solid #a0a0a0; margin: 5px 5px 5px 5px; padding: 5px 1em 5px 1em; } #wikiIcon { float:right; margin-right: 10px; text-align: right; vertical-align: middle; } #wikiSideMenu { width:140px; } div.indent { padding-left:2em; } div.hint { font-family: gulim; font-size:9pt; color:block; line-height:150%; background-color: #369; color:white;} a.purple { font-family: gulim; font-size:9pt; color:block; line-height:150%; text-decoration:none;} /* Blog CSS */ a.purple { font-family: gulim; font-size:9pt; color:block; line-height:150%; text-decoration:none;} div.blog { width:90%; padding: 0em 1em 0em 1em; } div.blog-user { font-family: gulim; font-size:9pt; color:block; line-height:150%; } div.blog-title { font-family: gulim; font-size:9pt; color:block; line-height:150%; font-weight:bold; } div.blog-comments { padding: 1em 1em 1em 2em; border-left: 1px dashed #7B9AC5; background-color:#DFF0FF;} div.blog-date { font-family: gulim; font-size:9pt; color:block; line-height:150%; font-weight:bold; padding-bottom:5px;} span.blog-user { font-family: gulim; font-size:9pt; color:block; line-height:150%; } div.trackback-hint { font-family: gulim; font-size:9pt; color:block; line-height:150%; padding: 1em 1em 1em 1em;background-color: #eee;} /* Calendar */ td.day { background: #90B7DC; text-align: center;} td.today { background:#fff; text-align: center;} span.blogged { text-decoration:none; font-weight:bold; color:#2C5982; text-align: center; } /* HierarchicalWiki */ div.wikiGroup { font-family: gulim; font-size:9pt; color:block; line-height:150%; } /* enscript syntax */ div.wikiPre i,div.wikiPre b{ font-weight: normal; font-style: normal; } img.imgLeft { margin-right : 15px; margin-bottom : 5px; } img.imgRight { margin-left : 10px; margin-bottom : 5px; } span.externalLink { display: none; } /*a.externalLink[href^='http:'] { a.externalLink { padding-right: 9px; background-image: url("../../../imgs/popup.png"); background-position: right; background-repeat: no-repeat; } */ span.lineNumber { color:#ffff00; }
Calendar 수정하기
좀 더 보기 좋은 Calendar 을 만들기 위해서 plugin/Calendar.php 파일을 아래와 같이 수정한다.
$prev_tag='<'; $next_tag='>'; ... $year_prev_tag='<'; $year_next_tag='>'; $prev_tag='‹'; $next_tag='›';
가입과 수정 제한
모니위키의 기본설정은 익명의 사용자도 페이지 수정이 가능하고, 사용자 등록을 할 수 있도록 되어 있다.
등록된 사용자만 페이지 추가 및 수정이 가능하고, 더이상의 사용자 등록을 할 수 없도록 config.php 을 다음과 같이 추가한다.
$security_class="mustlogin"; $no_register=1;
필요없는 플러그인 삭제
RandomPage
오른쪽 하단에 각 페이지마다 랜덤하게 페이지 링크를 표시한다. theme/blog/footer.php 을 수정한다.
#print '<font style="font-size:11px">'; // 주석 처리 #print macro_RandomPage($this,"4,simple"); #print '</font>';
검색 박스
페이지 상단에 페이지를 검색할 수 있는 텍스트 박스가 있다. theme/blog/header.php 를 수정한다.
</td><td width='10%' rowspan='2'><?php echo $login?></td></tr> <tr><td><?php echo $goto_form?></td></tr> // <?php echo $goto_form?> 삭제 </table>
로그인 박스
페이지 오른쪽 상단에 사용자 로그인을 할 수 있는 텍스트 박스가 있다. theme/blog/header.php 를 수정한다.
</td><td width='10%' rowspan='2'><?php echo $login?></td></tr> // <td width='10%' rowspan='2'><?php echo $login?></td></tr> 삭제
메뉴 조정하기
wiki.php 에서 아래와 같이 수정한다.
if (!$this->css_friendly) { $menu=$this->menu_bra.implode($this->menu_sep,$menus).$this->menu_cat; } else { $menu="<div id='wikiAction'>"; $menu.='<ul><li>'.implode("</li>\n<li>\n",$menus)."</li></ul>"; // $menu.=''.implode("\n",$menus).""; 로 수정 $menu.="</div>"; }