PukiWiki/Memo
をテンプレートにして作成
LECTURE
担当科目一覧
コンピュータ概論/2024
データサイエンス/2024
3DCG演習/2024
情報デザイン研究/2024
卒業研究/2024
KEYWORDS
WEB DESIGN
SOCIAL DESIGN
SQUARES
LINKS
九州産業大学
芸術学部
芸術研究科
九産大美術館
九産大図書館
年間スケジュール
動画ニュース他
交通情報
気象・環境情報
危機に備えて
K'sLife
Office365Mail
Tools
SEARCH
開始行:
*PukiWiki活用メモ
RIGHT:[[PukiWiki]]
~
***Notes
Login Required
-[[note/PukiWiki1.5.4開発メモ]]
-[[note/PukiWiki1.5.2開発メモ]]
-[[note/PukiWiki1.5.1開発メモ]]
~
#contents2_1
~
~
**編集記法覚書
***公式のテキスト整形ルール
-[[FormattingRules]]
~
***アンカー
-ページ内の中途、アンカーを置きたい場所に以下のように記載
&aname(label01); 名称は半角英数
-リンク先の記述を以下のように書けばOK
[[ページ名#label01]]
~
***上付き文字・下付き文字
default.ini.php 117行目付近 ユーザー定義ルールに以下の2...
$line_rules = array(
:
"SUP{([^}]*)};" => '<span style="vertical-align:super;...
"SUB{([^}]*)};" => '<span style="vertical-align:sub; f...
);
以上の設定により、以下の表記が可能になります。
上付き:SUP{文字列}; 例) 2 SUP{8}; = 256
下付き:SUB{文字列}; 例) - log SUB{2}; P
表示例:2 SUP{8}; = 256 - log SUB{2}; P
~
***下線
default.ini.php 117行目付近 ユーザー定義ルールに以下を追加
$line_rules = array(
:
"__(?!_)((?:(?!__).)*)__" => '<span style="text-decora...
);
以上の設定により、以下の表記が可能になります。
下線:__アンダーライン__
表示例:__アンダーライン__
~
***サイトマップを作るには
サイト全体のコレクションであれば「一覧」を応用。
必要なページの見出しをコレクションするには以下。
#ls2([ページ名],title) これを列挙
~
~
**コマンド操作
アドレスバーで、(URL)/index.phpに続けて ?cmd=, ?plugin...
~
***コマンドで編集画面に入る(ボタンがない場合)
http://(URL)/index.php?cmd=edit&page=(ページ名)
~
***ページの一覧を各ページの実ファイル名と共に表示
http://(URL)/index.php??cmd=filelist
~
***添付の一覧を表示
http://(URL)/?plugin=attach
// http://(URL)/?plugin=attach&pcmd=list
不要な添付ファイル(添付のバックアップ)はここから「詳細...
~
***PukiWiki 暗号化テキスト生成
PukiWikiサイトであれば標準機能です。pukiwiki.ini.phpにパ...
http://(URL)/index.php?plugin=md5
~
~
**デフォルトシステム
***デバッグモードの利用
index.phpの9行目付近を変更
error_reporting(E_ERROR | E_PARSE); // Avoid E_WARNING, ...
//error_reporting(E_ALL); // Debug purpose
↓
//error_reporting(E_ERROR | E_PARSE); // Avoid E_WARNING...
error_reporting(E_ALL); // Debug purpose
参考:実際、その都度index.phpを書き換えるのは面倒。そこで...
~
***クエリ文字列長について
pukiwiki.ini.php 42行目
日本語の長いページ名を扱う場合は、以下のように数値を修正...
//define('PKWK_QUERY_STRING_MAX', 640); // Bytes, 0 = OFF
define('PKWK_QUERY_STRING_MAX', 1280); // Bytes, 0 = OFF
通常、この変更は必要ないが、長い名称のページの編集におい...
~
***WikiName(大文字小文字を混ぜた英文字列)を無効にするには
pukiwiki.ini.phpの「$nowikiname」を 「1」に設定
一部のWikiNameのみに適応したい場合は、大文字に当たる部分...
WorldWide
この書き方であれば、WikiName機能を無効にしてWorldWideと表...
~
***編集時に ~ を使わずに改行をそのまま反映させたい
pukiwiki.ini.phpの以下の部分を変更
/////////////////////////////////////////////////
// 改行を反映する(改行を<br />に置換する)
$line_break = 0; → $line_break = 1に変更する。
~
***「見出し」の右上の(↑)
見出し右上のナビゲータへのリンク(↑)を消去するには、
default.ini.php で
$top = $_msg_content_back_to_top ; ← この行をコメントア...
$top = ''; ←このよう(シングルクオーテーション2つ)に...
~
***「見出し」に自動生成されるダガー:†を消すには
アンカー機能を残しつつ、「†」が表示されないように変更する...
ja.lng.php で
//$_symbol_anchor = '&dagger;'; ← この行をコメントア...
$_symbol_anchor = ' '; ←全角スペースを定義する
~
***「見出し」に自動生成されるアンカーを無くすには
pukiwiki.ini.php内「Automatically add fixed heading ancho...
$fixed_heading_anchor = 0;
~
***ライセンス文字列 S_COPYRIGHT は
lib/init.php 内に情報あり
~
***listのインデント設定
default.ini を編集
~
***添付ファイルの上限サイズ設定(デフォルト1MBを16MBへ)
-plugin/attach.inc.phpの15行目
ini_set("upload_max_filesize","2M"); を
ini_set("upload_max_filesize","16M"); へ
-同じくattach.inc.phpの19行目
define('PLUGIN_ATTACH_MAX_FILESIZE', (1 * 1024 * 1024));...
define('PLUGIN_ATTACH_MAX_FILESIZE', (16 * 1024 * 1024))...
~
***添付時に管理者パスワード入力を求めないようにするには
attach.inc.php 23行で
define('PLUGIN_ATTACH_UPLOAD_ADMIN_ONLY', TRUE); → FAL...
~
***添付の削除時にバックアップを作らないようにするには
attach.inc.php で以下のように設定するとよい。添付のバック...
// 管理者が添付ファイルを削除するときは、バックアップを...
// PLUGIN_ATTACH_DELETE_ADMIN_ONLY=TRUEのとき有効
define('PLUGIN_ATTACH_DELETE_ADMIN_NOBACKUP', TRUE); // ...
~
***RENAME時に管理者パスワードを求めないように
rename.inc.php を以下のように変更
--- rename.inc.php.orig Sat Jul 31 12:09:20 2004
+++ rename.inc.php Fri Nov 26 18:16:52 2004
@@ -273,7 +273,7 @@
}
}
$pass = rename_getvar('pass');
- if ($pass != '' && pkwk_login($pass))
+ if ($pass != '')
{
return rename_proceed($pages, $files, $exists);
}
@@ -337,8 +337,7 @@
<div>
<input type="hidden" name="plugin" value="rename" />
$input
- {$_rename_messages['msg_adminpass']}
- <input type="password" name="pass" value="" />
+ <input type="hidden" name="pass" value="dummy" />
<input type="submit" value="{$_rename_messages['btn_s...
</div>
~
***RecentChangesコマンドで表示される件数
・・・/index.php?RecentChanges で最新の更新一覧が表示さ...
件数は、pukiwiki.ini.php 280行目付近 $maxshowの値で決まり...
// $whatsnew: Max number of RecentChanges
$maxshow = 100;
~
***無視ページの設定
pukiwiki.ini.php:491行目付近
// Regex of ignore pages
$non_list = '^\:';
最終更新や一覧に表示させたくないページを設定する機能です。
-除外したいページを[[正規表現>RegularExpression]]で記述し...
-以下の例では、「行頭が : ではじまるページ」または「行頭...
$non_list = '^\:|^test';
--^ は「行頭の」を意味します。
--\ は、直後の「メタ文字( : )」を通常の文字として扱え・...
-- | は、論理和(〜または〜)を意味します。
~
***無視ページに該当するものを検索時に表示するか
pukiwiki.ini.php:上記項目の下
// Search ignored pages
$search_non_list = 1;(検索対象となって表示される)
0にすると :config 等のシステムファイルは検索時にも無視さ...
~
***無視ページに ignore を設定しても recent に出てしまう。
> cache/recent.dat を一旦削除すればOK
~
~
**プラグイン開発
***articleプラグインの別バージョン
投稿記事の下のコメント入力あり・なしは、プラグインファイ...
define('PLUGIN_ARTICLE_COMMENT',1); // 1:入れる 0:入れ...
しかし、ユーザーサイドでコメント入力あり・なしを選択でき...
-function plugin_article_action > function plugin_articl...
-function plugin_article_convert >function plugin_articl...
-convert 関数内の以下を変更
<input type="hidden" name="plugin" value="article" />
→ <input type="hidden" name="plugin" value="article_plus...
~
***search
#lookup で Search を有効にするには、以下を0 に。(デフォ...
ただし、コマンド検索が可能になるので、スパム攻撃受けやす...
// Allow search via GET method 'index.php?plugin=search&...
// NOTE: Also allows DoS to your site more easily by SPA...
define('PLUGIN_SEARCH_DISABLE_GET_ACCESS', 0); // 1, 0
~
**環境設定
***特定のネットワーク外からのアクセスを不可にするには
.htaccess内に以下の記述を追加
<Limit GET>
order deny,allow
deny from all
allow from 133.17.
</Limit>
~
~
**デュアルシステム
''index.php と member.php を用意して、異なる入り口に異な...
~
***pukiwiki.ini.php
以下をコメントアウトして、pukiwiki.ini.php における SKIN_...
// Directory settings II (ended with '/')
// Skins / Stylesheets
// define('SKIN_DIR', 'skin/'); ← ココ 85行目付近
~
***index.php
以下のような記述を加えて、SKIN_DIR を認識させる
// Directory definition
// (Ended with a slash like '../path/to/pkwk/', or '')
define('DATA_HOME', '');
define('LIB_DIR', 'lib/');
define('SKIN_DIR', 'skin/'); ← ココ 22行目付近(標準ス...
~
***member.php
以下のような記述を加えて、SKIN_DIR を認識させる
// Directory definition
// (Ended with a slash like '../path/to/pkwk/', or '')
define('DATA_HOME', '');
define('LIB_DIR', 'lib/');
define('SKIN_DIR', 'skin_member/'); ← ココ 22行目付近(...
~
~
**その他
***システムファイル :config
以下のようにして閲覧・編集可能
/path/to/index.php?:config
/path/to/index.php?:config/plugin/attach/mime-type
~
***プラグインが動作しない
プラグイン名に大文字を使うと、サーバーによっては動かない...
fileName.inc.php → file_name.inc.php
~
***閲覧認証が通らない場合にも、メニュー部分が表示されてし...
これらも表示されないようにするには、''lib/auth.php'' で ...
if ($exit_on_fail) {
//$body = $title = str_replace('$1',
//htmlsc(strip_bracket($page)), $title_cannot);
//$page = str_replace('$1', make_search($page), $title...
//catbody($title, $page, $body);
echo "閲覧には正しいIDとパスワードが必要です";
exit;
}
384行目付近
//以下、旧バージョン2
// if ($exit_flag) {
// //$body = $title = str_replace('$1',
// // htmlsc(strip_bracket($page)), $title_cannot);
// //$page = str_replace('$1', make_search($page), $ti...
// //catbody($title, $page, $body);
// echo "閲覧には正しいIDとパスワードが必要です";
// exit;
// }
//Basic authentication > Auth failed の部分 248行目付近
//以下、旧バージョン
// if ($auth_flag) {
// header('WWW-Authenticate: Basic realm="' . $_msg_a...
// header('HTTP/1.0 401 Unauthorized');
// }
// if ($exit_flag) { //以下の表示部分をコメントアウト
// //$body = $title = str_replace('$1',
// // htmlspecialchars(strip_bracket($page)), $tit...
// //$page = str_replace('$1', make_search($page), $t...
// //catbody($title, $page, $body);
// echo "閲覧には正しいIDとパスワードが必要です";
// exit;
// }
~
~
#hr
CENTER:'''''以下、古い情報'''''
#hr
~
~
**PHP8への対応
***新バージョン PukiWiki 1.5.4 を導入
PukiWiki 1.5.4 は、PHP8.1 に対応
~
~
**PHP7への対応
***新バージョンの PukiWiki 1.5.1 を導入
-認証方法含め、かなり変更あり。1.5.0からの変更には提供さ...
-PukiWIki 1.5.1 をベースに、
--pukiwiki.ini.php の書き換え
--attach, cash, counter, wiki, 等、コンテンツを投入
--skinについては、pukiwiki.skin.php のシステム部分の記述...
--オリジナルプラグインの投入
~
***プラグインのエラー
Parse error: syntax error, unexpected 'new' (T_NEW) in
PHP5からPHP7にバージョンを上げた際に上記のエラー
PHP7では新しいオブジェクトを参照渡しで代入ができない・・
$obj = & new AttachPages2($refer);
を以下のように修正
$obj = new AttachPages2($refer);
~
~
**PHP5.5への対応
***新バージョンの PukiWiki 1.5.0 を導入
-基本的には、libフォルダ と pluginフォルダを入れ替えれば...
-但し、プラグインをカスタマイズしているケースでは、個々に...
~
~
**PHP5.4系で動かなくなる問題
PukiWiki 1.4.7の継続利用については、とりあえずは、以下の...
-hex2bin関数をコメントアウト
lib/func.php にある「hex2bin」関数が、PHP5.4からネイティ...
// Inversion of bin2hex()
/*
function hex2bin($hex_string)
{
// preg_match : Avoid warning : pack(): Type H: ...
// (string) : Always treat as string (not int ...
return preg_match('/^[0-9a-f]+$/i', $hex_string) ?
pack('H*', (string)$hex_string) : $hex_s...
}
*/
-ls2プラグインの関数呼び出し時の参照渡しを修正
plugin/ls2.inc.php で、関数呼び出し時の参照渡しがされてい...
これを修正。
array_walk($args, 'plugin_ls2_check_arg', & $params);
↓
array_walk($args, 'plugin_ls2_check_arg', $params);
-オンラインユーザーの表示にも問題。onlineプラグインを修正
plugin/online.inc.php の中に2箇所
plugin_online_check_online(& $count, $host)
↓
plugin_online_check_online($count, $host)
参考:http://pukiwiki.sourceforge.jp/dev/?BugTrack2%2F349
~
~
**PHPがCGIモードでBASIC認証が効かない場合
-解決策1 SESSIONスタイル
plugin フォルダに [[login.inc.php>http://pukiwiki.source...
lib フォルダ内の auth.php を
login.inc.php用のもので置き換え
※当該プラグインページからDL可
pukiwiki.ini.phpへ
$auth_type = 'session';session_start();session_regenerat...
の一行を追加。
ただ、このままだと、refで画像表示する回数が増えると編集で...
そこで、
session_regenerate_id(TRUE) の項目をコメントアウトして
$auth_type = 'session';session_start();
の記述に変更すると、refで表示する回数を2箇所以上でもOKと...
~
-解決策2 DUAL INDEX スタイル
一般閲覧用の pukiwiki.skin.phpからはツールバー部分を削除...
一見 PukiWikiであることがわからないビジュアルにする。
pukiwiki.ini.php では、$edit_auth = 0;
として、編集認証を用いないようにする
--手順1:index.php をコピーして index_admin.php をつくる
---index.php? :一般閲覧者にアクセスさせる
>ツールバー非表示スキン skin を利用
---index_admin.php? 管理者はここからアクセスする
>ツールバー表示スキン skin_admin を利用
編集は誰でもOK状態とするが、index_admin.php というファイ...
見えているサイトがPukiWikiによるものとわかれば、index.p...
具体的には index.php?cmd=edit&page=ページ名
しかし実際は、よほどの悪意がないかぎり、そうまでして荒ら...
--手順2:skinフォルダの設定情報を書き分ける
pukiwiki.ini.php にある、SKIN_DIR という変数が、SKINフォ...
// Skins / Stylesheets
define('SKIN_DIR', 'skin/');
---index.php に以下の2行を追加
// Skins / Stylesheets
define('SKIN_DIR', 'skin/');
---index_admin.php:に以下の2行を追加
// Skins / Stylesheets
define('SKIN_DIR', 'skin_admin/');
--手順3:skin フォルダを複製して、skin_admin をつくる
---skin:一般閲覧者用のスキン(ツールバー部分を非表示に)
---skin_admin:管理者用のスキン
--手順4:index_admin.php が検索でかからないよう設定する
skin_admin 内 pukiwiki.skin.php の metaname 部分を以下の...
<meta name="robots" content="NOINDEX,NOFOLLOW" />
//index_admin.php の 23 24 行めあたりに以下の2行を追加
//
//define('SKIN_DIR', 'skin/');
//define('SKIN_FILE', DATA_HOME . SKIN_DIR . 'pukiwiki.sk...
//
//pukiwiki.skin.php を複製して pukiwiki.skin_admin.php ...
//
~
~
**yesterdayのカウントが0になってしまう場合
plugin/couter.inc.php ファイル内86行目を以下のように修正...
-× get_date('Y/m/d', strtotime('yesterday', UTIME)));
-○ get_date('Y/m/d', strtotime('yesterday')));
~
~
**Kcaptchaで画像が表示されない
-PHPにGDがインストールされている必要がある。
-GD for PHP5 を追加インストールしたら解決
~
~
**Flashが最前面にきてしまう問題の解決策
//http://web-conte.com/blue/200610/23_1952.php より
Flashオブジェクトは z-indexなどの指定を無視して、基本的に...
-object要素内に下記を追加
<param name="wmode" value="transparent" />
- embed要素の属性に下記を追加
wmode="transparent"
芸学サイトのトップのスライドについては、以下のとおり変更
-オリジナル
function flash_activate(){
// ---- initialize tag string ----
var strObj = '<object classid="clsid:d27cdb6e-ae6d-11...
var strPrm = '';
var strEmb = '<embed ';
-変更後
function flash_activate(){
// ---- initialize tag string ----
var strObj = '<object classid="clsid:d27cdb6e-ae6d-11...
var strPrm = '<param name="wmode" value="transparent"...
var strEmb = '<embed wmode="transparent" '; // ここ変更
~
~
終了行:
*PukiWiki活用メモ
RIGHT:[[PukiWiki]]
~
***Notes
Login Required
-[[note/PukiWiki1.5.4開発メモ]]
-[[note/PukiWiki1.5.2開発メモ]]
-[[note/PukiWiki1.5.1開発メモ]]
~
#contents2_1
~
~
**編集記法覚書
***公式のテキスト整形ルール
-[[FormattingRules]]
~
***アンカー
-ページ内の中途、アンカーを置きたい場所に以下のように記載
&aname(label01); 名称は半角英数
-リンク先の記述を以下のように書けばOK
[[ページ名#label01]]
~
***上付き文字・下付き文字
default.ini.php 117行目付近 ユーザー定義ルールに以下の2...
$line_rules = array(
:
"SUP{([^}]*)};" => '<span style="vertical-align:super;...
"SUB{([^}]*)};" => '<span style="vertical-align:sub; f...
);
以上の設定により、以下の表記が可能になります。
上付き:SUP{文字列}; 例) 2 SUP{8}; = 256
下付き:SUB{文字列}; 例) - log SUB{2}; P
表示例:2 SUP{8}; = 256 - log SUB{2}; P
~
***下線
default.ini.php 117行目付近 ユーザー定義ルールに以下を追加
$line_rules = array(
:
"__(?!_)((?:(?!__).)*)__" => '<span style="text-decora...
);
以上の設定により、以下の表記が可能になります。
下線:__アンダーライン__
表示例:__アンダーライン__
~
***サイトマップを作るには
サイト全体のコレクションであれば「一覧」を応用。
必要なページの見出しをコレクションするには以下。
#ls2([ページ名],title) これを列挙
~
~
**コマンド操作
アドレスバーで、(URL)/index.phpに続けて ?cmd=, ?plugin...
~
***コマンドで編集画面に入る(ボタンがない場合)
http://(URL)/index.php?cmd=edit&page=(ページ名)
~
***ページの一覧を各ページの実ファイル名と共に表示
http://(URL)/index.php??cmd=filelist
~
***添付の一覧を表示
http://(URL)/?plugin=attach
// http://(URL)/?plugin=attach&pcmd=list
不要な添付ファイル(添付のバックアップ)はここから「詳細...
~
***PukiWiki 暗号化テキスト生成
PukiWikiサイトであれば標準機能です。pukiwiki.ini.phpにパ...
http://(URL)/index.php?plugin=md5
~
~
**デフォルトシステム
***デバッグモードの利用
index.phpの9行目付近を変更
error_reporting(E_ERROR | E_PARSE); // Avoid E_WARNING, ...
//error_reporting(E_ALL); // Debug purpose
↓
//error_reporting(E_ERROR | E_PARSE); // Avoid E_WARNING...
error_reporting(E_ALL); // Debug purpose
参考:実際、その都度index.phpを書き換えるのは面倒。そこで...
~
***クエリ文字列長について
pukiwiki.ini.php 42行目
日本語の長いページ名を扱う場合は、以下のように数値を修正...
//define('PKWK_QUERY_STRING_MAX', 640); // Bytes, 0 = OFF
define('PKWK_QUERY_STRING_MAX', 1280); // Bytes, 0 = OFF
通常、この変更は必要ないが、長い名称のページの編集におい...
~
***WikiName(大文字小文字を混ぜた英文字列)を無効にするには
pukiwiki.ini.phpの「$nowikiname」を 「1」に設定
一部のWikiNameのみに適応したい場合は、大文字に当たる部分...
WorldWide
この書き方であれば、WikiName機能を無効にしてWorldWideと表...
~
***編集時に ~ を使わずに改行をそのまま反映させたい
pukiwiki.ini.phpの以下の部分を変更
/////////////////////////////////////////////////
// 改行を反映する(改行を<br />に置換する)
$line_break = 0; → $line_break = 1に変更する。
~
***「見出し」の右上の(↑)
見出し右上のナビゲータへのリンク(↑)を消去するには、
default.ini.php で
$top = $_msg_content_back_to_top ; ← この行をコメントア...
$top = ''; ←このよう(シングルクオーテーション2つ)に...
~
***「見出し」に自動生成されるダガー:†を消すには
アンカー機能を残しつつ、「†」が表示されないように変更する...
ja.lng.php で
//$_symbol_anchor = '&dagger;'; ← この行をコメントア...
$_symbol_anchor = ' '; ←全角スペースを定義する
~
***「見出し」に自動生成されるアンカーを無くすには
pukiwiki.ini.php内「Automatically add fixed heading ancho...
$fixed_heading_anchor = 0;
~
***ライセンス文字列 S_COPYRIGHT は
lib/init.php 内に情報あり
~
***listのインデント設定
default.ini を編集
~
***添付ファイルの上限サイズ設定(デフォルト1MBを16MBへ)
-plugin/attach.inc.phpの15行目
ini_set("upload_max_filesize","2M"); を
ini_set("upload_max_filesize","16M"); へ
-同じくattach.inc.phpの19行目
define('PLUGIN_ATTACH_MAX_FILESIZE', (1 * 1024 * 1024));...
define('PLUGIN_ATTACH_MAX_FILESIZE', (16 * 1024 * 1024))...
~
***添付時に管理者パスワード入力を求めないようにするには
attach.inc.php 23行で
define('PLUGIN_ATTACH_UPLOAD_ADMIN_ONLY', TRUE); → FAL...
~
***添付の削除時にバックアップを作らないようにするには
attach.inc.php で以下のように設定するとよい。添付のバック...
// 管理者が添付ファイルを削除するときは、バックアップを...
// PLUGIN_ATTACH_DELETE_ADMIN_ONLY=TRUEのとき有効
define('PLUGIN_ATTACH_DELETE_ADMIN_NOBACKUP', TRUE); // ...
~
***RENAME時に管理者パスワードを求めないように
rename.inc.php を以下のように変更
--- rename.inc.php.orig Sat Jul 31 12:09:20 2004
+++ rename.inc.php Fri Nov 26 18:16:52 2004
@@ -273,7 +273,7 @@
}
}
$pass = rename_getvar('pass');
- if ($pass != '' && pkwk_login($pass))
+ if ($pass != '')
{
return rename_proceed($pages, $files, $exists);
}
@@ -337,8 +337,7 @@
<div>
<input type="hidden" name="plugin" value="rename" />
$input
- {$_rename_messages['msg_adminpass']}
- <input type="password" name="pass" value="" />
+ <input type="hidden" name="pass" value="dummy" />
<input type="submit" value="{$_rename_messages['btn_s...
</div>
~
***RecentChangesコマンドで表示される件数
・・・/index.php?RecentChanges で最新の更新一覧が表示さ...
件数は、pukiwiki.ini.php 280行目付近 $maxshowの値で決まり...
// $whatsnew: Max number of RecentChanges
$maxshow = 100;
~
***無視ページの設定
pukiwiki.ini.php:491行目付近
// Regex of ignore pages
$non_list = '^\:';
最終更新や一覧に表示させたくないページを設定する機能です。
-除外したいページを[[正規表現>RegularExpression]]で記述し...
-以下の例では、「行頭が : ではじまるページ」または「行頭...
$non_list = '^\:|^test';
--^ は「行頭の」を意味します。
--\ は、直後の「メタ文字( : )」を通常の文字として扱え・...
-- | は、論理和(〜または〜)を意味します。
~
***無視ページに該当するものを検索時に表示するか
pukiwiki.ini.php:上記項目の下
// Search ignored pages
$search_non_list = 1;(検索対象となって表示される)
0にすると :config 等のシステムファイルは検索時にも無視さ...
~
***無視ページに ignore を設定しても recent に出てしまう。
> cache/recent.dat を一旦削除すればOK
~
~
**プラグイン開発
***articleプラグインの別バージョン
投稿記事の下のコメント入力あり・なしは、プラグインファイ...
define('PLUGIN_ARTICLE_COMMENT',1); // 1:入れる 0:入れ...
しかし、ユーザーサイドでコメント入力あり・なしを選択でき...
-function plugin_article_action > function plugin_articl...
-function plugin_article_convert >function plugin_articl...
-convert 関数内の以下を変更
<input type="hidden" name="plugin" value="article" />
→ <input type="hidden" name="plugin" value="article_plus...
~
***search
#lookup で Search を有効にするには、以下を0 に。(デフォ...
ただし、コマンド検索が可能になるので、スパム攻撃受けやす...
// Allow search via GET method 'index.php?plugin=search&...
// NOTE: Also allows DoS to your site more easily by SPA...
define('PLUGIN_SEARCH_DISABLE_GET_ACCESS', 0); // 1, 0
~
**環境設定
***特定のネットワーク外からのアクセスを不可にするには
.htaccess内に以下の記述を追加
<Limit GET>
order deny,allow
deny from all
allow from 133.17.
</Limit>
~
~
**デュアルシステム
''index.php と member.php を用意して、異なる入り口に異な...
~
***pukiwiki.ini.php
以下をコメントアウトして、pukiwiki.ini.php における SKIN_...
// Directory settings II (ended with '/')
// Skins / Stylesheets
// define('SKIN_DIR', 'skin/'); ← ココ 85行目付近
~
***index.php
以下のような記述を加えて、SKIN_DIR を認識させる
// Directory definition
// (Ended with a slash like '../path/to/pkwk/', or '')
define('DATA_HOME', '');
define('LIB_DIR', 'lib/');
define('SKIN_DIR', 'skin/'); ← ココ 22行目付近(標準ス...
~
***member.php
以下のような記述を加えて、SKIN_DIR を認識させる
// Directory definition
// (Ended with a slash like '../path/to/pkwk/', or '')
define('DATA_HOME', '');
define('LIB_DIR', 'lib/');
define('SKIN_DIR', 'skin_member/'); ← ココ 22行目付近(...
~
~
**その他
***システムファイル :config
以下のようにして閲覧・編集可能
/path/to/index.php?:config
/path/to/index.php?:config/plugin/attach/mime-type
~
***プラグインが動作しない
プラグイン名に大文字を使うと、サーバーによっては動かない...
fileName.inc.php → file_name.inc.php
~
***閲覧認証が通らない場合にも、メニュー部分が表示されてし...
これらも表示されないようにするには、''lib/auth.php'' で ...
if ($exit_on_fail) {
//$body = $title = str_replace('$1',
//htmlsc(strip_bracket($page)), $title_cannot);
//$page = str_replace('$1', make_search($page), $title...
//catbody($title, $page, $body);
echo "閲覧には正しいIDとパスワードが必要です";
exit;
}
384行目付近
//以下、旧バージョン2
// if ($exit_flag) {
// //$body = $title = str_replace('$1',
// // htmlsc(strip_bracket($page)), $title_cannot);
// //$page = str_replace('$1', make_search($page), $ti...
// //catbody($title, $page, $body);
// echo "閲覧には正しいIDとパスワードが必要です";
// exit;
// }
//Basic authentication > Auth failed の部分 248行目付近
//以下、旧バージョン
// if ($auth_flag) {
// header('WWW-Authenticate: Basic realm="' . $_msg_a...
// header('HTTP/1.0 401 Unauthorized');
// }
// if ($exit_flag) { //以下の表示部分をコメントアウト
// //$body = $title = str_replace('$1',
// // htmlspecialchars(strip_bracket($page)), $tit...
// //$page = str_replace('$1', make_search($page), $t...
// //catbody($title, $page, $body);
// echo "閲覧には正しいIDとパスワードが必要です";
// exit;
// }
~
~
#hr
CENTER:'''''以下、古い情報'''''
#hr
~
~
**PHP8への対応
***新バージョン PukiWiki 1.5.4 を導入
PukiWiki 1.5.4 は、PHP8.1 に対応
~
~
**PHP7への対応
***新バージョンの PukiWiki 1.5.1 を導入
-認証方法含め、かなり変更あり。1.5.0からの変更には提供さ...
-PukiWIki 1.5.1 をベースに、
--pukiwiki.ini.php の書き換え
--attach, cash, counter, wiki, 等、コンテンツを投入
--skinについては、pukiwiki.skin.php のシステム部分の記述...
--オリジナルプラグインの投入
~
***プラグインのエラー
Parse error: syntax error, unexpected 'new' (T_NEW) in
PHP5からPHP7にバージョンを上げた際に上記のエラー
PHP7では新しいオブジェクトを参照渡しで代入ができない・・
$obj = & new AttachPages2($refer);
を以下のように修正
$obj = new AttachPages2($refer);
~
~
**PHP5.5への対応
***新バージョンの PukiWiki 1.5.0 を導入
-基本的には、libフォルダ と pluginフォルダを入れ替えれば...
-但し、プラグインをカスタマイズしているケースでは、個々に...
~
~
**PHP5.4系で動かなくなる問題
PukiWiki 1.4.7の継続利用については、とりあえずは、以下の...
-hex2bin関数をコメントアウト
lib/func.php にある「hex2bin」関数が、PHP5.4からネイティ...
// Inversion of bin2hex()
/*
function hex2bin($hex_string)
{
// preg_match : Avoid warning : pack(): Type H: ...
// (string) : Always treat as string (not int ...
return preg_match('/^[0-9a-f]+$/i', $hex_string) ?
pack('H*', (string)$hex_string) : $hex_s...
}
*/
-ls2プラグインの関数呼び出し時の参照渡しを修正
plugin/ls2.inc.php で、関数呼び出し時の参照渡しがされてい...
これを修正。
array_walk($args, 'plugin_ls2_check_arg', & $params);
↓
array_walk($args, 'plugin_ls2_check_arg', $params);
-オンラインユーザーの表示にも問題。onlineプラグインを修正
plugin/online.inc.php の中に2箇所
plugin_online_check_online(& $count, $host)
↓
plugin_online_check_online($count, $host)
参考:http://pukiwiki.sourceforge.jp/dev/?BugTrack2%2F349
~
~
**PHPがCGIモードでBASIC認証が効かない場合
-解決策1 SESSIONスタイル
plugin フォルダに [[login.inc.php>http://pukiwiki.source...
lib フォルダ内の auth.php を
login.inc.php用のもので置き換え
※当該プラグインページからDL可
pukiwiki.ini.phpへ
$auth_type = 'session';session_start();session_regenerat...
の一行を追加。
ただ、このままだと、refで画像表示する回数が増えると編集で...
そこで、
session_regenerate_id(TRUE) の項目をコメントアウトして
$auth_type = 'session';session_start();
の記述に変更すると、refで表示する回数を2箇所以上でもOKと...
~
-解決策2 DUAL INDEX スタイル
一般閲覧用の pukiwiki.skin.phpからはツールバー部分を削除...
一見 PukiWikiであることがわからないビジュアルにする。
pukiwiki.ini.php では、$edit_auth = 0;
として、編集認証を用いないようにする
--手順1:index.php をコピーして index_admin.php をつくる
---index.php? :一般閲覧者にアクセスさせる
>ツールバー非表示スキン skin を利用
---index_admin.php? 管理者はここからアクセスする
>ツールバー表示スキン skin_admin を利用
編集は誰でもOK状態とするが、index_admin.php というファイ...
見えているサイトがPukiWikiによるものとわかれば、index.p...
具体的には index.php?cmd=edit&page=ページ名
しかし実際は、よほどの悪意がないかぎり、そうまでして荒ら...
--手順2:skinフォルダの設定情報を書き分ける
pukiwiki.ini.php にある、SKIN_DIR という変数が、SKINフォ...
// Skins / Stylesheets
define('SKIN_DIR', 'skin/');
---index.php に以下の2行を追加
// Skins / Stylesheets
define('SKIN_DIR', 'skin/');
---index_admin.php:に以下の2行を追加
// Skins / Stylesheets
define('SKIN_DIR', 'skin_admin/');
--手順3:skin フォルダを複製して、skin_admin をつくる
---skin:一般閲覧者用のスキン(ツールバー部分を非表示に)
---skin_admin:管理者用のスキン
--手順4:index_admin.php が検索でかからないよう設定する
skin_admin 内 pukiwiki.skin.php の metaname 部分を以下の...
<meta name="robots" content="NOINDEX,NOFOLLOW" />
//index_admin.php の 23 24 行めあたりに以下の2行を追加
//
//define('SKIN_DIR', 'skin/');
//define('SKIN_FILE', DATA_HOME . SKIN_DIR . 'pukiwiki.sk...
//
//pukiwiki.skin.php を複製して pukiwiki.skin_admin.php ...
//
~
~
**yesterdayのカウントが0になってしまう場合
plugin/couter.inc.php ファイル内86行目を以下のように修正...
-× get_date('Y/m/d', strtotime('yesterday', UTIME)));
-○ get_date('Y/m/d', strtotime('yesterday')));
~
~
**Kcaptchaで画像が表示されない
-PHPにGDがインストールされている必要がある。
-GD for PHP5 を追加インストールしたら解決
~
~
**Flashが最前面にきてしまう問題の解決策
//http://web-conte.com/blue/200610/23_1952.php より
Flashオブジェクトは z-indexなどの指定を無視して、基本的に...
-object要素内に下記を追加
<param name="wmode" value="transparent" />
- embed要素の属性に下記を追加
wmode="transparent"
芸学サイトのトップのスライドについては、以下のとおり変更
-オリジナル
function flash_activate(){
// ---- initialize tag string ----
var strObj = '<object classid="clsid:d27cdb6e-ae6d-11...
var strPrm = '';
var strEmb = '<embed ';
-変更後
function flash_activate(){
// ---- initialize tag string ----
var strObj = '<object classid="clsid:d27cdb6e-ae6d-11...
var strPrm = '<param name="wmode" value="transparent"...
var strEmb = '<embed wmode="transparent" '; // ここ変更
~
~
ページ名: