「Wiki」に関する日記

次>

アンパンマンDBとキャラ倉庫とJC-GP20XBK

アンパンマンDB(記事更新)

来週の放送情報。
そうめん…残暑だからまだ季節か。

キャラ倉庫

Bot対策しつつアクセスログから人気のページを集計するための仕組み、作ってみました。

(技術的な話)
mw.hook('wikipage.content').add(function () {
    const id = mw.config.get('wgArticleId');
    if (id === 0) {
        return;
    }
    const d = new Date().getTime();
    setTimeout(async () => {
        try {
            const url = '/a.md?' + id + '-' + d + '-' + (new Date().getTime());
            await fetch(url, { method: 'HEAD' });
        } catch (error) {
        }
    }, 5000);
});

グローバルスクリプトのMediaWiki:Common.jsに処理を書くことで対応しています。
このスクリプトでやるのは、集計に使えるリクエストをサーバーに送ってアクセスログに残させるところまでです。
実際の集計は、後日、これとは別に作ります。

まず前提として、ここではJavaScriptを使って行います。
私の個人的なこだわりとして、JavaScriptを使わずに済むなら使わずに済ませたいのですが、MediaWikiの時点でJavaScript使いまくっているので、相対的にデメリットは少ないかなと。
そして、Botはページ本文だけ見に来て、JavaScriptの実行まではしないことがほとんどですからね。

mw.hook('wikipage.content')は、コンテンツロード後に関数が発動するする仕組みです。

で、最初にページIDを取って、有効なページのときだけ処理を進めるようにしています。
特別ページなど、記事じゃないページを集計しても仕方ないですからね。
ちなみに、このMediaWiki:Common.jsのページも記事IDを持つ立派な記事なので、みんながこのスクリプトを見に行くと、スクリプトが人気ページになります。
まあ、これは今後実際に集計する仕組みを作るときに除外すればいいだけの話かな。

処理が進んだら、時刻を記録してタイムアウトを仕込んで、サーバーにリクエストを送ります。
このときのリクエスト先URLは、できるだけ短い名前にした静的ファイルのa.mdに、パラメータでページIDとタイムアウト前後の時間を加えています。
URLに時刻を含めることで、リクエストせずキャッシュからレスポンスが返るのを防ぎつつ、URLと実際のリクエスト時刻を照合してリクエストの整合性を検証できるようにしています。
タイムアウト仕込む前とタイムアウト後の時刻両方を含むので、ちゃんと待ったかどうかの検証もできます。
Botが昔見つけたURLをもう一度叩いても期限切れなので意味がないというわけですね。
もちろん、人間のアクセスでも、ちゃんと読まずに一瞬で通り過ぎた場合は集計対象になりません。
なお、ただのタイムスタンプなので明確な悪意があれば偽装は容易ですが、そんなことする意味もないので、偽装するやつはいないという想定です。

ちなみに、わざわざ有効な静的ファイルを用意しているのは、MediaWikiの手を煩わせないためです。
静的ファイルがあればそれを直接読むように設定してあります。
もしファイルを置かなければ、MediaWikiに処理が渡り、a.mdというありもしない記事を探した挙句、本来必要のないエラーログを残して404エラーを出すことでしょう。
そうさせないための、静的ファイルです。

そして、サーバーへリクエストを送る際は、HEADメソッドで送ります。
目的はあくまでも「リクエストを送ること」までなので、レスポンスは要らないし、ましてやリクエスト先のコンテンツなんかも全く必要ありません。
なので、コンテンツを返さないHEADメソッドが無駄がなくてよいということになります。
厳密に言うと、レスポンスヘッダは返ってきますが、不要なので受け取らずに捨てています。
Botはむしろリクエスト先の中身が欲しいので、GETメソッドでリクエストするでしょうが、HEADメソッドではないので集計対象にはしませんし、もちろんリクエスト先のa.mdの中身は無意味なものしか入っていません。

一応、a.mdの中身は下記リンクから見えるようにしておきますが、本当に意味のないことしか書いていませんし、これを読んだところで人気ページ集計には寄与しません。
a.md

というわけで、まとめると、こうなります。

  • 文字化け対策:ページIDを使って確実にページ特定
  • Bot対策:時刻をパラメータに含めて検証&普段使わないHEADメソッドでリクエスト
  • 負荷対策:静的ファイルにHEADメソッドでリクエスト

JC-GP20XBK(ゲームコントローラ)

なんかPCが一挙手一投足ごとにタスク切り替えだのゲーム起動画面だのが出てきておかしいなと思ったら、ゲームコントローラが誤作動していました。
USBケーブル差しなおしたら改善したので、どうやら繋ぎっぱなしだったケーブルが外れかけて接触不良を起こしていたようです。

キャラ倉庫とスーパーカービィハンターズとバイオハザード レクイエム

キャラ倉庫

見せない特別ページ、単にErrorPageErrorを出すだけの実装にしていたんだけど、それだとソフト403(許可しないというメッセージが出るけどステータスコード200)になってしまうので、LocalSettings.phpを修正してちゃんとHTTP 403を出すようにしました。

// 一般ユーザーには見せないページ
$wgHooks['SpecialPageBeforeExecute'][] = function ( $special, $subPage ) {
	if ( $special->getUser()->isAnon() ) {
		switch ($special->getName()) {
			case 'Allpages':                 // ページ一覧
			// 中略
			case 'Whatlinkshere':            // リンク元
				break;
			
			default:
				HttpStatus::header( 403 ); // ←ここを追加
				throw new ErrorPageError( 'badaccess', 'badaccess-group0' );
		}
	}
	return true;
};

スーパーカービィハンターズ


そうびコンプ!
強化はゆうしゃミッションに係わるものだけ完了しています。
この先はしっかり戦って成績残していく必要があるなァ。

他の写真は以下から。
スーパーカービィハンターズ(2026/08/23)の写真

バイオハザード レクイエム

2026_08_23_22_59_43.png
今回はしっかり進展あった!
六角スパナの使いどころやっと見つけたのもですが、リストタグLv.2も手に入れて探索範囲が広がりました!

(ネタバレとか)

2026_08_23_22_51_34.png
以前太陽のクォーツを取ったときに見逃していたアイテム、今回、何の気なしに同じ場所再訪して適当にキー連打しながら歩いてたら知らない間に入手してました。

2026_08_23_22_53_04.png
この手帳のヒントで臓器輸送ケース開けて人工肺ゲット!

2026_08_23_23_00_05.png
六角スパナで扉開けた先で人工心臓もゲット!

2026_08_23_23_02_15.png
で、いつぞやの死体にはめ込んだら、動き出しました。
これがボスかと思ったら、案外弱かった!

2026_08_23_23_03_05.png
ということで、リストタグLv.2ゲット。

次回はリストタグLv.2使うところからですね。
動画は最低限の編集だけしてアップ中。

他の写真は以下から。
バイオハザード レクイエム(2026/08/23)の画面写真集

キャラ倉庫

お行儀の悪いbotへの対策をしてました。

robots.txtを見てくれる程度に理性が残っているならrobots.txtで。
特別ページを深掘りされても迷惑なだけなんで、そういう指定に。
ちなみに、robots.txtの設定が競合する場合、長いほうが勝つらしいです。

User-agent: *
Allow: /
Disallow: /w/
Allow: /w/images/
Disallow: /%E7%89%B9%E5%88%A5:
Disallow: /%e7%89%b9%e5%88%a5:
Disallow: /特別:
Disallow: /Special:

そもそもほとんどの特別ページはロボットに限らずただの閲覧者に見せる必要はないので、MediaWikiのLocalSettings.phpの中でアクセス制御。

// 一般ユーザーには見せないページ
$wgHooks['SpecialPageBeforeExecute'][] = function ( $special, $subPage ) {
	if ( $special->getUser()->isAnon() ) {
		switch ($special->getName()) {
			case 'Allpages':                 // ページ一覧
			// ... 見せていい特別ページだけ許可リスト方式で列挙
			case 'Whatlinkshere':            // リンク元
				break;
			
			default:
				throw new ErrorPageError( 'badaccess', 'badaccess-group0' );
		}
	}
	return true;
};

迷惑が過ぎる奴は、.htaccessで問答無用で弾く。

SetEnvIfNoCase User-Agent "meta-externalagent" bad_ua=on
RewriteCond %{ENV:bad_ua} on
RewriteRule ^(.*)$ - [F,L]

AI クローラに HTTP 402 を返して課金する。AWS WAF 新機能の仕組み - サーバーワークスエンジニアブログ
この記事に書いてあるような、AIクローラーに課金するシステムが使い物になるようになったら、3日間で同じコンテンツに4万アクセスでもしてくれていいんですがね。

kawax/niconicoと浮き沈みランチャー2と美文のキャラ倉庫とC#用単位・数値変換クラス

kawax/niconico

Allow nullable search queries and update CI workflows (#6) · kawax/niconico@a867729
無事本家に取り込まれたようです。
…って、ついでの変更多いな。

浮き沈みランチャー2

実際使っていかないと開発のモチベも上がんないしなーということで、実際使いつつ開発も続けていくため、開発用データと実際使うためのデータを分けて扱うようにしました。

#if DEBUG
    private const string AppFolderName = "FLaunch2.Debug";
#else
    private const string AppFolderName = "FLaunch2";
#endif

まあ、プリプロセッサを使った古典的な制御ですな。

で、モチベがわいた結果、気になってきたやつ。
#102は実行は非同期でやってUIは即閉じれば良さそう。
#103は初期実装時の設定がおかしかっただけなんで、プロパティ調整でいけるかな。
#104は、イマドキらしく余白の多いオシャレなデザインに寄せた結果、情報密度が下がり、マウス動かす量も増えて微妙だなってやつ。
オシャレに振るのも悪くないとは思うので、確定的な変更ではなく、ユーザーのお好みで変えられるオプションとして課題立てました。
オプションなら、前作以上のギュウギュウ詰めにできたっていいかもね。

美文のキャラ倉庫

美文のキャラ倉庫
Wiki版キャラ倉庫、正式公開しました。
調整したいことはまだあるけど、情報自体はすでに全部入っていて、これ以上オフラインで粘ってもいいことないなって思ったんで、現状で公開しました。
以前も言った年齢順大きさ順とか、人気のページとか、やってみたいですね。
全部情報が入ったとはいえ、Wikiのやり方に合わないものを無理やり入れている部分もあるので、そのあたりの調整を先にやっといたほうがいいかも。

C#用単位・数値変換クラス

年齢順大きさ順といえば、キャラ倉庫の前前前世にあたるCharaBoxに搭載されていて、その部分は一応ライブラリとしても公開されています。
しかし、MediaWikiで使うLuaと違うというのは仕方ないにしても、文字コードがShift_JISだし、C#2向けに作られているし、今となっては使いにくい代物です。
Luaに移植する前に、今使えるライブラリとして、形を整えてみたいですね。
テキストテンプレートかコードジェネレータ使えばdouble以外の型にも対応できるか?

アンパンマンDBとドラゴンクエスト10と美文のキャラ倉庫と日記

アンパンマンDB(記事更新)

リンクにげんき100ばい!マーケットを追加しました。
公式のオンラインショップです。
DVDとかの円盤系はなくて、ぬいぐるみや雑貨とかのグッズ系が中心ですね。
絵本もあるけど原作はなくて、書籍目的なら書店のほうが良さげ。

ドラゴンクエスト10(全員)

水やり
第25回アストルティア★ハッピーくじ「アストルティア14周年お祝いくじ」 (2026/8/3更新)|目覚めし冒険者の広場
くじの結果が出たので、商品引き換えしてきました!
今回の参加賞は、水やりのしぐさです。
カメラが近付くとじょうろだけ消えるので、何か悪いことに使えそう。

他の写真は以下から。
写真置き場「2026/08/03」

美文のキャラ倉庫(MediaWiki)

ifという制御構造が入る以上、プログラミングなわけで、Wikiのマークアップ言語ではなくプログラミング言語のLuaで書くのが正攻法だったのです。
そうすれば、Wikiルールの余計なものが入るのも防げるのです。
…という方向で、修正中。

日記

共有ボタン、表示するようにしました。
こんな感じのHTMLになっています。

<a class="cp" href="javascript:navigator.clipboard.writeText('2026年8月3日の日記 https://tgws.plus/diary/20260803');" title="タイトルとURLをコピー">コピー</a>

まあ、昔ながらの、hrefに「javascript:」入れるやつです。
もっときれいにやる方法はもちろんあるんですが、機能しなくても困らないおまけみたいなボタンなんで、あんまりこだわる必要はないかなーと。

アンパンマンDBとドラゴンクエスト10と美文のキャラ倉庫

アンパンマンDB(記事更新)

来週の放送情報。
可愛い組み合わせと神秘の組み合わせですな。

ドラゴンクエスト10(しろいコキン)

オトナなビキニ

  • クエスト「夏の恋は嵐のごとく」をクリアした!

しろいコキンも無事クリア。
うーんセクシー…?

マリンスライム
バトルはいろんなモンスターを試してみました。
前回のヒトデのほうがやりやすかったなーと思ったり。

他の写真は以下から。
写真置き場「2026/07/31」

美文のキャラ倉庫

ひとまずWordPressにあるデータはすべて移行できるようになりました。
ただ、ここからカテゴリ自動登録とかの仕組みも作っていきたいので、実際の移行までにはもうちょっとかかりそうです。
土日にできたらいいなァ。

謎に広い間が開く件については原因が分かったのでセクションを改めて。

MediaWiki

HTMLのtable要素の中でMediaWikiのifを使うと、trタグを生成しなかったときに、何もない空行ではなく、「何もない」がある有効行として扱われ、何も表示しないパラグラフを生成してしまっていたのでした。

<table class="wikitable">
{{#if:{{{正式名称|}}}|
<tr><th>正式名称</th><td>{{{正式名称|}}}</td></tr>
}}<!-- 正式名称がないとき、<p><br></p>が生成される -->
</table>

で、table要素の中に直接パラグラフがあるのは違反だから、外に追い出されて謎の空白を生み出していたというわけです。
とりあえずtableタグも含めて全部1行に押し込めると行うんぬんの話が根本から消滅するので一応は解決なのですが、それじゃ読みにくくてしゃーないんですよね。
もっといい解決法考えたいものです。

アンパンマンDBとドラゴンクエスト10と美文のキャラ倉庫とTGWS内部処理

アンパンマンDB(記事更新)

来週の放送情報。
SLマンとコキンちゃんは昔順序逆のやつがあったらしい。

ドラゴンクエスト10(おきがえリポちゃん)

あぶない浴衣
[DQXショップ] おきがえリポちゃん ~ あぶない浴衣 ~ (2026/7/22)|目覚めし冒険者の広場
いつもの月例貸衣装。
浴衣の片側が大きくはだけてインナーが丸出しになっている服。
ちなみに男はインナーなしなので片乳丸出しです。

あぶない浴衣
うーん、確かにこれは危ない男…。

他の写真は以下から。
写真置き場「2026/07/24」

美文のキャラ倉庫

モジュールを読み込んでくれない問題、XMLからモジュールをインポートしてたんですが、そこでのモデルとフォーマットの指定が通常の記事と同じだったので、モジュールじゃなくて記事扱いされていたのでした。
移行用プログラムを修正してScribuntoとして取り込まれるように修正しました。
そしてもう一つ、Luaの実行用バイナリに実行権限がついていなかったのも一因でした。
Windowsめぇ…。

TGWS内部処理

とりあえず、致命的な問題はなさそうなので、PHP8.4に上げてみました。
うーん、事前調査で出なかったDEPRECATEDがいっぱい出てたぞ…。

美文のキャラ倉庫とTGWS内部処理とドラゴンクエスト10

美文のキャラ倉庫

ScribuntoでLua書いてるけど、そもそもモジュールを読み込んでくれない!
何か操作が必要なのか?

TGWS内部処理

ともあれ、古いコードが残りすぎていたPukiWikiは完全に脱したので、PHPのバージョン上げ作業。
今のところ問題はなさそう。
8.4に無事上がったら、もうストッパーになるコンテンツはないので、エラーを見ながら8.5まで早々に上げる予定。

ドラゴンクエスト10(ミフミン)

鉄鬼軍王キラゴルド

  • 鉄鬼軍王スレイヤーの称号を得た!

ミフミンも問題なく勝利!
今回はストームカイザー入りでやったんですが、都合のいい耐性のサポが見当たらなかったんで、ほぼ無策パーティーで特攻することに。
せっかくなのでミフミンも愉快なポーズでゴールドアストロンしたかったけど、キラゴルドさん全然こっち狙ってくれなかった!

ヘルクラウダー
またしてもついでにしばかれるヘルクラウダーさん。

他の写真は以下から。
写真置き場「2026/07/23」

MediaWikiとドラゴンクエスト10と浮き沈みリンク集

MediaWiki


とりあえずインストールして試しにトップページ記入。
なんか急にセッションが切れてログインできなくなったりとか変なトラブルに見舞われたりもしたけど、とりあえず編集はできました。

ドラゴンクエスト10

そういえば予約特典受け取ってなかったなとか思って探してみたら、そもそも来てなかった。
予約は確実にしたからあるはずなんだけど…。

浮き沈みリンク集

あまりに前時代的な実装になっているので、根本的な書き直しを検討中。
他にやること山ほどあるのでAIに丸投げしちゃうか…?

美文のキャラ倉庫とMediaWiki

美文のキャラ倉庫

いくつかの記事更新。
タグ追加中心です。
昨日と同じじゃねえか!

MediaWiki


とりあえずインストール試してます。
今のところアクセス制限掛けて、自分しか見られないようにしています。
多分これを採用するにしても、本番稼働前にいったんお試しデータを消してクリーンインストールしなおすと思います。

美文のキャラ倉庫とMediaWikiとドラゴンクエスト10

美文のキャラ倉庫

いくつかの記事更新。
タグ追加中心です。

MediaWiki

キャラ倉庫、WordPressで実装されているわけですが、WordPressは基本的にはブログを想定したシステムで、次々流れる最新情報を発信するのには向いていますが、過去情報を蓄積し「まとめ」ていくのにはあまり向いていません。
まとめと言えば、そう、Wikiです。
そう思って過去にPukiWikiやら@wikiやら試したのですが、@wikiは昔試した限りではインポート・エクスポートが使えず、PukiWikiはメンテがほぼ止まっていて今となっては使い勝手があまりに残念、というか、PukiWikiやめようってんで始めたのがキャラ倉庫だし。
というわけで考えたのが、Wikipediaというぶっちぎりの実績を持つMediaWikiってわけです。
ただ考えただけで、まだ作業は初めていません。
考えるだけなら過去にもやってますけどね。

ドラゴンクエスト10(しろいコキン)

  • 【コイン】デスマシーンをはじめて倒した!

今更討伐シリーズ!
当然写真は撮ってない!

ドラゴンクエスト10(ミフミン)

師父エンスウ

  • クエスト「花風 剣を導く」をクリアした!

やっとこさストームカイザーに転職するクエストをやりました。
師父にめちゃくちゃため息つかれちゃったけど、見捨てられずに済みました!

他の写真は以下から。
写真置き場「2026/07/07」

アンパンマンDBとBomber丸Worldと美文のキャラ倉庫とTableOfContents

アンパンマンDB(記事更新)

急に思いついて追加。
お友達っぽいちまきくんは未記入。

Bomber丸World

Wikiの情報を他に移行するために開発室を微更新。
HPとMPの説明を追加しました。

美文のキャラ倉庫

記事単位の追加はないけど、タグを色々つけて関連キャラをたどりやすくしています。
進捗40%ほど。

TableOfContents

Bomber丸World開発室の調整中に見つけた問題の修正。
id以外の属性があると見出しとみなされなかったので、そのあたりの対応です。
バージョン1.0.2に更新しました。

バイオハザード レクイエムと美文のキャラ倉庫とドラゴンクエスト10

バイオハザード レクイエム


昨日の日記にも追記しましたが、動画投稿しました。
YouTubeとニコニコの両方に上げたんですが、それぞれ違うAI機能搭載してるんですね。

美文のキャラ倉庫


HTMLファイルダウンロードしてAI画面にアップロードしてプロンプト打ち込むの、冷静に考えたらやっぱりめんどくさいので、もっと省力化を目指しました。
そもそもWikiの元データもWordPressのデータベースも手中に収めているわけですから、一つ一つダウンロードしなくても簡単に一括処理できるのです。
そして、元データから無駄なく抽出した軽量なテキストは、ファイルとしてアップロードしなくてもそのままプロンプトに組み込めるのです。
ということで、WikiとWordPressのデータを比較して、両方あるページにはAI用の比較プロンプトも生成するという仕組みを作りました。
今のところまあまあいい感じに差分を検出してくれています。
ChatGPTとGeminiを試してみたんだけど、Geminiのほうがこれに関しては優秀そう。

ドラゴンクエスト10(全員)

寝ている隙に総スルーされるドラゴン
竜王城の決戦・再演 (2026/5/13)|目覚めし冒険者の広場
竜王イベント再演、行ってきました。
まともな写真は過去に散々撮ったので今回はふざけ気味のやつを。
途中寝ているドラゴンは、戦わなくても進めるので基本的にみんなスルーしていくんですよね。
今回は犬にまでスルーされていました。

荒野を旅するオルゴール
今回の新規報酬はオルゴールと印章。
交換アイテムが余りまくったので、バザーに出せる旧イベントのオルゴールと交換しておきました。

他の写真は以下から。一応まともな写真も撮るだけは撮ったのよ。
写真置き場「2026/05/20」

アンパンマンDBと美文のキャラ倉庫

アンパンマンDB(記事更新)

メンドーくんの話を久しぶりに見たので、そこに出ていたロボットのデータ入れました。

美文のキャラ倉庫

Bomber丸World開発室のWikiをとっとと滅ぼしたいのでデータをキャラ倉庫に移行…のための確認中。
以前からやろうとはしていたんですが、キャラ倉庫側で移行済みページを探すのが大変すぎて確認作業すら進んでいませんでした。
なんでまあ、WikiのURLからキャラ倉庫側の推定URLを作って、それで見つからない場合のための検索URLも作るという方向で効率化を図っています。

PukiWiki

いつまでも残ってたPukiWikiのコンテンツ、必要なページだけ普通のHTMLに移して、PukiWikiで作ったページは閉じました。
うちは自作のシステムが中心となって動いているサイトなので、よそのシステムが入り込んでいると、扱いにくかったんですよね。
しかも、いまやメンテナンスしていない、ほんのわずかのコンテンツにしか価値がないものに、フルスペックのCMSが入っているので、大げさすぎるって言うのもありました。
この移設により、めでたくただのHTML1枚に収まりました。
まあ、内部的には自作のシステムがHTMLを生成してたりするんですが、それでも実質1ファイルなんで、シンプルにはなりました。

同じような境遇のページに、Bomber丸World開発室があるんですが、こっちは残したいコンテンツがまあまあいっぱい眠ってそうなんで、ゆっくりじっくり作業していきます。

@WIKIとアンパンマンDBとPHP

@WIKI

管理画面のメモ用Wiki、@WIKIに移転しました。
もともと非公開コンテンツだったので、@WIKIでもやっぱり非公開です。
ページ名だけはURLにアクセスすればわかってしまうのですが、まあ、URLも非公開なので多分大丈夫でしょう。

アンパンマンDB

「鉄火のコマキちゃんとミス・マリーネ」の作品情報を追加
「どんぶりまんトリオとオーロラ姫」の作品情報を追加
来週放送情報の追加。
美しい大人の女性のキャラクターがABともに出る感じですね。

PHP(Today I Learned)

PHP: 配列 - Manual
配列のアンパック。
array_mergeでやっていたような配列の結合を、[..$array1, ...$array2]みたいに記述できる機能です。
簡潔な構文で記述できて、性能もよくて柔軟性も高いそうです。

PukiWikiを復活させようと試行錯誤していた時に見つけました。
機能自体は7.4からあったのですが、うちのサイトでは7.4をすっ飛ばして一気に8.1まで上げてしまったので、気付けませんでした。
ネット上の記事では、JavaScriptでの同様に機能からの類推で、「スプレッド構文」と呼ばれることが多いようですね。

ただ、便利で、今後は積極的に使っていきたいとは思うのですが、性能がいいからと言って、過去のコードのarray_mergeまで全部置き換えるのはちょっと無謀かなって思いました。
というのも、array_mergeを削除するのはいいとして、丸括弧()で囲っていた部分を角括弧[]で囲ったうえ、両方の配列に...を付けるって言うのが、繰り返し間違いなく行うには結構複雑な手順なのです。
特に...忘れに関しては、エラーが出ずに、ただ望まない処理結果が返るだけなので、間違った修正をしても気付かずに、発見したころには元のコードを忘れていて修復不可能、ということが起こりそうなのです。

PukiWiki

PHPのバージョンを8.1に上げてから、Wikiが動いていなかったので、Wikiのバージョンを上げました。
エラーが少なければ自前で解消したかったのですが、多すぎたので、PHP最新バージョンに対応したバージョンに切り替えました。

PukiWiki/Download/1.5.4 - PukiWiki-official

ただ、今あるWikiはもうどれも保守する気はないので、全面的に凍結しています。
管理画面にこっそり置いてるメモ用のWikiも、どっかのレンタルWikiに移行してしまうつもりです。

mifumitterとキャラカード

mifumitter

「-is:retweet」は、このフレーズ以外全部を括弧でくくったら効きました。
多分、「filter:retweet」あたりも仕様が変わってるんじゃないかと思うので、ちょっと確認しようと思います。

キャラカード

今mifumitterを開発していることからもわかるように、2年ほど前に考えたキャラカード、全く開発は進んでいません。
CharaBoxからオンラインのどこかに自作キャラのデータを移行したくて、うちのこまとめはどうかなって思ったけど、私の望むものとは違っていて、それで自作しようかと考えたのですが、この体たらくです。
いずれキャラカードができることがあれば移行することを前提に、もっと他のオンラインシステムを使えないかなと模索中です。
とりあえず、Wikipediaという偉大な実用例があるMediaWikiを試してみるのもいいかなとか思っています。
まあ、WikiはWikiでBomber丸WorldのときにPukiWiki使って放置されましたが…。

アンパンマン情報Wiki

閉鎖しました。
直接的に後継となるようなサイトを作るつもりはないですが、集合知の考えをアンパンマンDBに取り入れる方向で今後対応していこうかなと思っています。
その前にやることがまだ山積みなんですけどね。

アンパンマン情報Wiki

なーんかまともに運営していける気がしないので、当初限度としていた11月を待たずに閉じてしまおうかなと思っています。
運営者の私もWikiにまで手をかけていられないし、だからと言って熱心な協力者もいないし、ユーザー登録しているのは私のほかにはスパムアカウントっぽいのだけだし。

次>