PukiWikiのメモ。

  • 基本的に、Pluginが充実しているので、結構便利。が、どんなPluginがあるのか良く分からないし、見付かりにくいため不便。なぜかPukiwikiのサイトはめちゃ反応がにぶいし。
  • Pukiwiki自身の単語検索(search)の弱さ・遅さにも辟易だなあ…。
  • わかってきたが、tracker_listとかsearchとか、エンジンそのものが非常に遅いようだ。これは致命的かもしれない。PHPデフォルトの30秒という実行時間内に終わらないこともしばしば。

インストール

パーミッションについて

ユーザー自身が含まれるグループを書き込み可能にしておいた後、スーパーユーザーにディレクトリ全体のOwnerをapacheに変えてもらうのがよさげ。あとでpukiwiki.ini.phpをいじりたいときにNot Ownerなんて言われたら超めんどくさいので。
いずれにせよ、少しめんどくさい。

管理人パスワード設定

pukiwiki.ini.phpにて&adminpassを適宜設定。

編集時にパスワードを求める

pukiwiki.ini.phpにて

// Edit auth (0:Disable, 1:Enable)
$edit_auth = 1;
                                                                                
$edit_auth_pages = array(
        '##'            => 'kei',
);

とする。上の例では、全てのページがパスワード保護される。

WikiNameの廃止

pukiwiki.ini.phpにて

// _Disable_ WikiName auto-linking
$nowikiname = 1;

とする。McDonnaldsとかでオートリンクされるのがイヤン。

秘密ページ

ini.php において

// Read auth (0:Disable, 1:Enable)
$read_auth = 1;
 
$read_auth_pages = array(
        // Regex                   Username
        '/^:.*$/'               => 'kei',

などとやると、":"から始まるページはkeiのパスワードを要求することができる。RecentChangesやList of pagesなどにも表示されない。

内容

改行・正規表現・その他ちょいネタ。

行末に"~"で改行。
正規表現はどうするのかなあ…。コード表で相当するのを直書きするのが良いようだ。めんどくさ。("&"は"&")
&sad;や&bigsmile;を使うとこういうの( [sad] [bigsmile])が出る。

ページ削除

Editの際、空にしてUpdate。

画像の一覧表示

プラグイン#jphotoを使用(オプション)。ポップアップされるのとか、フラッシュそのものが嫌だったりする。

階層内のページ一覧表示

#ls2が使える。見出しまで表示したいときは#ls2(,title)とする。

も少し詳細な階層内のページ一覧表示

#tracker_listが使えそう。詳細不明。

つくってみたが、trackerはうまく作動しても、tracker_listのほうに大きな問題があるみたいだ。それを使いたいのに…。本文が長いとlistが止まり、[body]という項目があるとなにやら勝手に反応する。(予期していない項目が[body]を食っていたりする。)

やれやれ、どうしたもんだか。長くなりそうなので大項目を作った。

画像を一度にアップロード

ひとつずつしかできない。tarでまとめてアップし、そこで解凍させるらしい・・・

目次の表示

#contentsを挿入(デフォルト)

カウンター

MenuBarに

RIGHT:
total: &color(green){&counter;};~
today: &color(green){&counter(today);};~
yesterday: &color(green){&counter(yesterday);};~

などと埋める。

アクセス解析

オプションプラグイン#accessでページごとのログ取り、#accessviewで閲覧。

#accessviewは一つ一つのページを埋め込む必要があって、めんどくさい。
秘密ページにもしたいが、やりかた不明→できた。あと、日本語でしか表示されない上に、エンコードに不備がある。(UTF-8が使われてない)

  • 修正点
    • ujconv -f euc -t utf8 infile > outfileによって、UTF-8に書き換え。
    • あと
      function readlog_accessview($page){
              //global $timestamp,$ip,$host,$user_agent;
      というようにglobal〜のところをコメントアウト。(そうしないと、カウントが変)

容量制限・一括添付

  • 結局、サーバー側のPHPの容量制限に引っかかるらしく、500KBが上限のようだ。そうじゃない場合の変更は、plugin/attach.inc.phpのupload_max_filesizePLUGIN_ATTACH_MAX_FILESIZEをいじる。
  • ひとつのファイルずつしかuploadできないので、http://cubic9.com/PukiWiki/ で配布されているattach、ref改造パッチをあててみた。
    • が、どうもUTF-8版には対応していないらしく、コメント等に日本語が含まれる箇所でパッチできない。何ヵ所かは手動で書き換えた。

見出しごとの編集

  • いろんなPukiWikiのページで実装されているのに、本家でやりかたが載っていない。(載っているけど、最新版での方法等がしっかり示されていない。)
  • 色々調べて、ここで配布されている1.4.7版のパッチが使えることが分かった。
    [kyoshimura@meteora ~]$ cd http
    [kyoshimura@meteora ~/http]$ patch -p0 --dry-run --verbose < paraedit20060527.diff
    [kyoshimura@meteora ~/http]$ patch -p0 --verbose < paraedit20060527.diff
    で見出しごとに鉛筆マークが出るようになれば成功。
    結構いろんなファイルを書き換えている。ちょっとどきどきだ。

外観(skin)

ヘッダーの画像変更

./image 内に画像を置き、pukiwiki.skin.phpにて

// Set site identities
$_IMAGE['skin']['logo']     = 'xxxx.jpg';

と変更。

ヘッダー(ページ一番上)のアドレスが表示されているところを階層状にする.

pukiwiki.skin.php内にて

if (! defined('SKIN_DEFAULT_DISABLE_TOPICPATH'))
        define('SKIN_DEFAULT_DISABLE_TOPICPATH', 0); // 1, 0

とする。

MenuBarの箇条書きを無くす

pukiwiki.css.phpにて

/* kei */
div#menubar ul li { list-style-type:none; }

などと足す。

tracker.inc.phpについて


COMMENT

#comment