Moniwiki 설치하기
최근(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>";
}