最近あちこちで見かけるようになったWiki。(私だけが知らなかっただけか?)
なんだかいろんな事が出来そうで、かなり興味をひかれました。
ただ使ってみたいという理由だけで導入することに決定。
デフォルトのままだと、オフィシャルサイト風な感じになってるのをちょっと自分風に変更しようという試みに挑戦。
PHPなんてさっぱりな私がなんとかサイトにするまでのメモを忘れないようにここに保管。
(普通サイトを作っている人たちは悩むようなところじゃないとこでかなり悩みまくり)
無いとは思うけども、同じようなサイトをまた別に作成したりするときの役にたつはず!


PukiWikiのインストール

PHPが使えるサーバー
私の使ってるサーバーではCGI版のPHPが利用可能だった。
PukiWikiのPHPなどのファイル一式
オフィシャルサイトからダウンロード。

以上がそろったらあとはオフィシャルサイトにあるインストールの手順を見て、管理者名やパスワードなど変更後ファイルを送信。

編集出来ない!?

私の場合、サーバー移転とともに設置したんだけど、
サーバー移転契約→新サーバーにデータ送信→DNS切り替え→旧サーバー削除される
という経過。

パーミッションが間違っているんじゃないかとか、もう…アレコレアレコレいじくりまわしました。
しかし!ただ単にDNS切り替え前だったため、編集などが使えないだけでした…

見出しの色や文字の色を変えよう

pukiwiki.css.php内を変更

全体的な文字色

body,td、a:link、a:active、a:visited、a:hoverといったカ所のcolorやbackground-colorをhtmlでページを作るのと感じで好きな色に変更。

見出し

h1,h2が大見出し、h3が中見出し、h4が小見出し、h5,h6部分はrecentの「最新の○○件」(メニューバーにあるやつ)ていうとこに使われてます。
h1.titleはページタイトル。

フッタ

なんかやたらフッタの文字が小さい気が…

div#footer {
	font-size:70%;
	padding:0px;
	margin:16px 0px 0px 0px;
}

デフォルトでは70%のようなので好みで変更。(このサイトでは90%にしてみました)

ツールバー(ナビバー)取っちゃおう

pukiwiki.skin.php内ある。

	define('PKWK_SKIN_SHOW_NAVBAR', 1); // 1, 0

	define('PKWK_SKIN_SHOW_TOOLBAR', 1); // 1, 0

の部分。

0にすると非表示になる。(↓こういうこと)

	define('PKWK_SKIN_SHOW_NAVBAR', 0); // 1, 0
	define('PKWK_SKIN_SHOW_TOOLBAR', 0); // 1, 0

現在は編集作業が頻繁なので両方とも表示してある。

ヘッダに背景を

pukiwiki.skin.php内のbody以下にあるheader部分を変更

<body>
<div id="header">

から

<body>
<div style="background-image: url(./image/test.png);" id="header">

./image/test.png部分は自分が背景にしたい画像にする。
pukiwiki.css.php内の以下の部分を、

div#header {
	padding:0px;
	margin:0px;
}

背景にしたい画像の高さに併せて高さを設定する。(このサイトでは100px)

div#header {
	padding:0px;
	margin:0px;
	height: 100px;
}

罫線太くない?

pukiwiki.css.php内を変更

  • ハイフン4つ以上で表示される罫線(タイトルの上下にも使われているやつ)
    ----
    で表示される罫線は以下の部分
    hr.full_hr {
    	border-style:ridge;
    	border-color:#333333;
    	border-width:1px 0px;
    デフォルトでボーダーのスタイルがridgeになっているのでsolid(1本線)に変更し、色と太さを変更。
    hr.full_hr {
    	border-style:solid;
    	border-color:#好きな色;
    	border-width:0px 0px 1px 0px;
     
  • コマンドで表示される罫線
    #hr
    で表示される罫線は以下の部分
    hr.short_line {
    	text-align:center;
    	width:80%;
    	border-style:solid;
    	border-color:#333333;
    	border-width:1px 0px;
    }
    せっかく中央寄せで若干短くしてあるものをだいなしにしてみました。
    長さ(width)を100%にして、1本線(solid)だったものを点線(dotted)に変更。
    あとは色と太さを変更。
    hr.short_line {
    	text-align:center;
    	width:100%;
    	border-style:dotted;
    	border-color:#好きな色;
    	border-width:0px 0px 1px 0px;
    }

widthの4つの数字は左から、上の線、右の線、下の線、左の線になってる。
下の線しか出してないしborder-bottomでいっぺんに設定すればよかったんじゃ…と、後になって思ったり…。

メニューバーの幅と色を変えよう

pukiwiki.css.php内を変更

  • 幅を変更
    td.menubar {
    div#menubar {
    の下にあるwidthに横幅を数値で入れる。(このサイトの場合は120pxにしてみました)
    	width:120px;
    2カ所とも変えないと、変にメニューバーとページの間に重なりが出来たりして見づらい。
     
  • 背景を変更
    div#menubar {
    の下の部分に
    	background-color: #好きな色;
    	background-image: url("背景にしたい画像までのURL");
    を追加。

ページタイトル

ページタイトル下のURLを変える

デフォルトではページタイトル下に小さな文字でそのページのURLが表示されます。
URLだと後ろに変な記号がダラダラでたりして見苦しいので、そのページまでのパス表示に変更。
pukiwiki.skin.php内

// SKIN_DEFAULT_DISABLE_TOPICPATH
//   1 = Show reload URL
//   0 = Show topicpath
if (! defined('SKIN_DEFAULT_DISABLE_TOPICPATH'))
	define('SKIN_DEFAULT_DISABLE_TOPICPATH', 1); // 1, 0

1がURL、0がパスなので、この中の一番下の行を以下(0)に変更

	define('SKIN_DEFAULT_DISABLE_TOPICPATH', 0); // 1, 0

ボディ内にページタイトルを入れる

pukiwiki.skin.php内

<h1 class="title"><?php echo $page ?></h1>
<?php if ($is_page) { ?>
<?php if(SKIN_DEFAULT_DISABLE_TOPICPATH) { ?>
  <a href="<?php echo $link['reload'] ?>"><span class="small"><?php echo $link['reload'] ?></span></a>
<?php } else { ?>
  <span class="small">
  <?php require_once(PLUGIN_DIR . 'topicpath.inc.php'); echo plugin_topicpath_inline(); ?>
  </span>
<?php } ?>
<?php } ?>

この部分を

  <div id="body"><?php echo $body ?></div>

の間に持ってくる。で、このサイトの場合はタイトルの上下に罫線を入れました。

<?php echo $hr ?>

罫線部分↑この行なので、これを入れたい位置に入れる。
変更後は以下のようになる

 <div id="body">

<?php echo $hr ?>
<h1 class="title"><?php echo $page ?></h1>
<?php if ($is_page) { ?>
<?php if(SKIN_DEFAULT_DISABLE_TOPICPATH) { ?>
  <a href="<?php echo $link['reload'] ?>"><span class="small"><?php echo $link['reload'] ?></span></a>
<?php } else { ?>
  <span class="small">
  <?php require_once(PLUGIN_DIR . 'topicpath.inc.php'); echo plugin_topicpath_inline(); ?>
  </span>
<?php } ?>
<?php } ?>
<?php echo $hr ?>

<?php echo $body ?></div>

タイトルの上に罫線を持ってきたため、ナビバー下の罫線がうざいので削除。

ページタイトルを完結に

ページが階層化されていると、タイトル部分が非常に長くなったりする。
例えば、ほげほげ>ちょっとほげほげ>はてしないほげほげ
という感じで階層になってると。
ほげほげ/ちょっとほげほげ/はてしないほげほげ
というタイトルになってしまうので、それを
はてしないほげほげ
というのだけ表示するようにする。

pukiwiki.skin.php内

<h1 class="title"><?php echo $page ?></h1>

http://pukiwiki.sourceforge.jp/dev/によると

<?php
if(mb_ereg("(.*)/(.*)", $title, $regs)){
   $t = $regs[2]; //ページタイトル
   $p = $regs[1]; //タイトルを除いたページのパス
   $e = rawurlencode($t);
   echo "<h1 class=\"title\"><a href=\"$script? $r_page&cmd=search&word=$e\">$t</a></h1>\n<span class=\"size1\">$p</span>";
}else{
   echo "<h1 class=\"title\">$page</h1>";
}
?>

に置き換えるだけでOKとのこと。
しかしやってみたら、タイトル下のパス部分にページ名がだぶってしまった…。
ので、だぶっているタイトル部分と思われる

\n<span class=\"size1\">$p</span>

を削除

<?php
if(mb_ereg("(.*)/(.*)", $title, $regs)){
   $t = $regs[2]; //ページタイトル
   $p = $regs[1]; //タイトルを除いたページのパス
   $e = rawurlencode($t);
   echo "<h1 class=\"title\"><a href=\"$script? $r_page&cmd=search&word=$e\">$t</a></h1>";
}else{
   echo "<h1 class=\"title\">$page</h1>";
}
?>

このように変更したらうまく表示できたので、たぶん平気なはず(憶測でどんどん変更していってます…)

フッタにスクエアエニックスの権利表記を入れたい

当ホームページに記載されている会社名・製品名・システム名などは、各社の登録商標、もしくは商標です。
Copyright © 2005 SQUARE ENIX CO., LTD. All Rights Reserced.
↑これですこれ。
ページ内にあるのは見苦しいし、邪魔にならずかつどのページにも表示される場所。
といったらフッタでしょう。

libフォルダ内にあるinit.phpを変更

define('S_COPYRIGHT',

の下に

	'<p>当ホームページに記載されている会社名・製品名・システム名などは、各社の登録商標、もしくは商標です。<br />'.
	'Copyright &copy; 2005 SQUARE ENIX CO., LTD. All Rights Reserced.</p>'.

を入れて、以下のようになる。

define('S_COPYRIGHT',
	'<p>当ホームページに記載されている会社名・製品名・システム名などは、各社の登録商標、もしくは商標です。<br />'.
	'Copyright &copy; 2005 SQUARE ENIX CO., LTD. All Rights Reserced.</p>'.
	'<strong>PukiWiki ' . S_VERSION . '</strong>' .
	' Copyright &copy; 2001-2005' .
	' <a href="http://pukiwiki.sourceforge.jp/">PukiWiki Developers Team</a>.' .
	' License is <a href="http://www.gnu.org/licenses/gpl.html">GPL</a>.<br />' .
	' Based on "PukiWiki" 1.3 by <a href="http://factage.com/yu-ji/">yu-ji</a>'
);

階層化されたページ

たとえば、「ほげほげ」というページの下に「ちょっとほげほげ」をいうページを作る場合
「ほげほげ」ページを開いて「新規」ボタンからページを作成。
ページ名を「./ちょっとほげほげ」にする。

他のページのコンテンツを入れたい

lsプラグインで出来るらしい。
やってみたところ、ページタイトルがそのまま出るのがカッコワルイので使用を断念…。
タイトル部分の変更方法がわかったらメモする予定。

変更したのに反映されない

私はSafari、Netscape、IEでそれぞれ見て確認してるのですが、ヘッダの背景を変更したときIEだけページの更新をしても一行に画像が出てきませんでした。(SafariもNetscapeも画像がすぐ出た)
どこか間違っているんじゃないかとskinファイルを小3〜4時間もいじくりまわした結果。
IEのキャッシュをからにして読み込みなおしたら出ました……あの私の数時間は……
すごい初歩的?なことを見逃してたような…ちょっとしぼんだ出来事でした。


Last-modified: 2006-11-20 (月) 13:37:01