最終更新:2019-05-22 (水) 13:57:56 (1801d)  

PukiWiki設定
Top / PukiWiki設定

  • ページの編集に認証が必要。
  • :から始まるページの閲覧にも認証が必要。

php.iniの変更

  • mapを出力するのにメモリが足りなくなったので16Mにした

レイアウトの改造

recentの拡張

デフォルトだと70件までしか表示されないので
pukiwiki.ini.phpの$maxshowを60→90にして、
cache/recent.datを削除後、どこかのページを編集。

amazon.inc.phpの修正

YouTube対応

  • youtube.inc.phpを入れた。

ニコニコ動画対応

はてなブックマーク対応

skin/pukiwiki.skin.php

のlast modifiedの前あたりに

<A HREF="javascript:window.location='http://b.hatena.ne.jp/entry/'+escape(location.href);">
<img src="http://d.hatena.ne.jp/images/b_entry.gif" alt="はてなブックマークを見る" width="16" height="12" border="0" />
<img src='http://b.hatena.ne.jp/entry/image/<?php echo $link['reload']  ?>'></A>

外部リンク表示

pukiwiki 1.4系で別ホストを外部リンクとして扱う。

ここのJavaScriptのを入れた。

URLの日本語文字対応

favion.inc.phpのplugin_favicon_get_html()に

//EUCとかでURLエンコードされてた場合用
$text=mb_convert_encoding(urldecode($text),"UTF-8","auto");

を追加

GS2スキンの修正

タイトルの先頭に/が入るので修正

  //pukiwiki.skin.php
  //071224 先頭に/が入るのを修正-----
  $ptitle = preg_replace('/\/$/','',$ptitle);
  //071224 -------------------------
  $ptitle .= '</span>';

引用(preタグ)がはみ出るのを修正

  • pukiwiki_gs2.css.phpに
pre {
    white-space: -moz-pre-wrap; /* Mozilla */
    white-space: -pre-wrap;     /* Opera 4-6 */
    white-space: -o-pre-wrap;   /* Opera 7 */
    white-space: pre-wrap;      /* CSS3 */
    word-wrap: break-word;      /* IE 5.5+ */
}

を追加

テーブルがはみ出たときに中央のボックスがリサイズされない

  • pukiwiki_gs2.css.phpに
div#contents {
	padding:12px;
	background-color:<?php echo SKIN_CSS_CTS_BGCOLOR; ?>;
	border:3px solid <?php echo SKIN_CSS_CTS_BDCOLOR; ?>;
+	overflow:auto;
}

部分編集

HTMLプラグイン

attachプラグインで画像が表示されない

  • 添付した画像が表示されないのでHTTPプロキシを使ってデバッグしてみたらUTF-8BOM(EF BB BF)が先頭に出力されていたので確認してみたら自分で入れたプラグインのファイルがBOMつきで保存されていて涙目

コードのハイライト表示

GeSHi(Generic Syntax Highlighter)プラグイン

#geshi(言語名){{
ここにソース
}}

対応言語

言語名指定方法
ActionScriptactionscript
ActionScript3actionscript3
ADAada
Apache Logapache
AppleScriptapplescript
ASMasm
ASPasp
AutoITautoit
Backus*Naur form(BNF)bnf
Bashbash
BlitzBasic?blitzbasic
Cc
C for Macsc_mac
C#csharp
C++cpp
CAD DCLcaddcl
CadLisp?cadlisp
CFDGcfdg
ColdFusioncfm
CSScss
Delphidelphi
DIVdiv
DOSdos
Eiffeleiffel
Fortranfortran
FreeBasic?freebasic
GMLgml
Groovygroovy
Haskellhaskell
HTMLhtml4strict
Inno?inno
IOio
Javajava
Java 5java5
JavaScriptjavascript
LaTeXlatex
Lisplisp
Lualua
Microprocessor ASMmpasm
mIRC?mirc
MySQLmysql
NSISnsis
Objective-Cobjc
OCamlocaml
OpenOffice BASICoobas
Oracle 8 SQLoracle8
Pascalpascal
Perlperl
PHPphp
PL/SQL?plsql
Pythonpython
Q(uick)BASICqbasic
Railsrails
robots.txtrobots
Rubyruby
SASsas
Schemescheme
SDLBasicadlbasic
Smalltalksmalltail
Smartysmarty
SQLsql
T*SQLtsql
TCLtcl
thinBasicthinbasic
Uno IDLidl
VB.NETvbnet
Visual Basicvb
Visual Fox Provisualfoxpro
Winbatchwinbatch
X++xpp
XMLxml
Z80 ASMz80

CSS

  • geshi\contrib\cssgen2.phpを使うと生成できる。

配色の変更

  • /skin/geshi/default.css の
    .c .coMULTI
    .cpp .coMULTI
  • を#008000(green)に変更

get_existpages()の高速化

popular.inc.phpの高速化

Requests per second:    1.11 [#/sec] (mean)
Time per request:       901.185 [ms] (mean, across all concurrent requests)

から

Requests per second:    6.19 [#/sec] (mean)
Time per request:       161.422 [ms] (mean, across all concurrent requests)

へ。

コロンの有効化・InterWikiの無効化

  • PukiWiki/lib/init.php?
    //$BracketName = '(?!\s):?[^\r\n\t\f\[\]<>#&":]+:?(?<!\s)';
    $BracketName = '(?!\s):?[^\r\n\t\f\[\]<>#&"]+:?(?<!\s)';
    //$InterWikiName = '(\[\[)?((?:(?!\s|:|\]\]).)+):(.+)(?(1)\]\])';
    $InterWikiName = '(\[\[)?((?:(?!\s|:|\]\]).)+):::(.+)(?(1)\]\])';

メモ

  • なんか調子悪いと思ったらページ増えすぎてpopularプラグインのキャッシュ生成が30秒以内に終わらないことにより、次々とタイムアウトして応答がなくなってたようだ。