| @技術/プログラミング

PHP 5.1.6

 僕の 2ch Viewer は p2 拡張パック の BigO なんですけど、こちらはもう開発がストップしててレガシー化しているので、ちょっと ASAP を試してみようと思ってインストールしてみました。そしたら PHP のバージョンを 4.3.3 以降にせよという警告メッセージが表示される。Mac OS X にデフォルトで入ってる PHP のバージョンは確か 4.1 なので(PHP 4.3.1 がプリインストールされているみたいです。スミマセン)、一丁 PHP のバージョンアップにチャレンジしてみることにしました。

 古いバージョンの p2 を使っていて最近バージョンアップしたら PHP のアップデートを求められ、PHP をアップデートしたらその後 Apache が起動しなくなったという人は参考にしてみて下さい。

 コマンドラインを使ってインストールするのは難しいので、Mac OS X + Database を参考に、Marc Liyanage - Software - Mac OS X Packages - PHP からインストールパッケージをダウンロードしました。これが劇簡単。普通のアプリをインスコするのと変わらない。素人にもお勧めできます。

Continue reading...

| @技術/プログラミング

 P_BLOG ProjectのフォーラムにRSS 2.0の時刻フォーマットがおかしいという投稿がありました(P_BLOG Project : フォーラム)。これは自分でも前々から気になっていたところだったので、修正にトライしてみました。

 ファイルをダウンロードして解凍し、/rss/include/ 内の二ファイルと差し替えればOKです。時刻のずれ、フォーマットのエラーも修正されています。

| @技術/プログラミング

 P_BLOGのカテゴリー検索(category.php)は部分一致検索気味で、例えば"昔の日記"というカテゴリーと"日記"というカテゴリーがあったとするなら、日記のカテゴリーを選択したときに前者まで含まれてしまうのですよね(やっぱりうまくいかないカテゴリー検索)。そういうわけで、後方一致がおきないようにカテゴリー(TAG)をつけるようにしていたのですが、うっかり後方が重複するカテゴリーができてました。"本"と"熊本"です。地名は盲点だった :-!

 しょうがないのでもう一度 category.php いじりにチャレンジしてみました。


//=====================================
// CATEGORY LIST UP QUERY -- HOW?
//=====================================

$patterns = '/(*|+|^|$|?|(|))/';
if (preg_match($patterns, $key)) {
    // (1) Use "LIKE" search
    $listup_query = "BINARY category LIKE '%".$key."%')";
} else {
    // (2) Use MySQL Regular Expression
    $listup_query = "category REGEXP BINARY '^".$key."$|^".$key.",|,".$key.",|,".$key."$|,?".$key.",|,?".$key."$')";
}
Continue reading...

| @技術/プログラミング

 P_BLOGもMovable Typeみたいに記事タイトルだけを列挙したアーカイブリストみたいのがあれば良いなと思っていたんですけど、さっきはてなのP_BLOGリングを覗いていたら、Quanterm OptexというブログでVARSを使ってアーカイブリストを表示するスクリプト(Quanterm Optex : Files : ログの一覧表示)が公開されているのを発見しました。これがめちゃイカス。早速ダウンロードして設置してみました(portal shit! : ARCHIVES)。いやー、スバラシイ :-D

 Quanterm Optexのyuecさんは他にもめちゃくちゃP_BLOGをカスタマイズしていてカッチョイイのですが、パーマリンクのURIをデフォルトの /article.php?id=記事id ではなくて、/article記事id.html となるように改造しておられるため、配布されている log-list.php をそのまま設置しても機能しません。55行目と187行目付近のパーマリンクへのリンク部分を

<a href="/article.php?id='.$row['id'].'">

と書き直す必要があります。あと個人的にデザインはCSSで一括指定したいので一部表示に関わる部分をゴニョゴニョしました。

 このVARSスクリプトはまじでイカスのでP_BLOGユーザーにはオススメです。

| @技術/プログラミング

 Future is Nowさんで公開されているplg_aal_recentを使って、プロフィールのページにLast.fmのRSSフィードを拾って最近iTunesで再生した曲を表示するようにしてたんだけど、ここ数日、何も表示されない状態が続いていた。おかしいなぁと思ったら、Last.fmのRSSの仕様が変更されたくさい。

 まずRSSのURLが変更になっていた。これまで http://ws.audioscrobbler.com/rdf/history/(username) だったものが、 http://ws.audioscrobbler.com/1.0/user/(username)/recenttracks.rss に変わったようだ。そういうわけなので早速 /include/user_include/plugins/plg_aal_recent.inc.php をエディターで開いて修正した。修正するのは57行目あたりの $rss_feed

$rss_feed = 'http://ws.audioscrobbler.com/rdf/history/'.$user_name;

$rss_feed = 'http://ws.audioscrobbler.com/1.0/user/' . $user_name . '/recenttracks.rss';

と修正。

Continue reading...

| @技術/プログラミング

plg_paze_analyze
 大変便利な Future is Now さん提供のP_BLOG用アクセス解析プラグイン、plg_page_analyzeなんですが、いくつか不満な点があったのでちょっと改造しました。

 まず、サイト内リファラを拾ってしまう点。リファラ画面が自サイトだらけになってしまうんですよね。Page Analyzeプラグインはカウントしないリファラ($page_ex_ref)を設定できるので、当初はここに自サイトのURIを設定してサイト内移動のリファラを記録しないようにしてたんですが、これだとアクセス総計に狂いが出ることが分かりました。すなわち、サイト内をぐるぐる見て回る人がいても、Pageviewのカウントは1なわけですね。それじゃ正しい解析が出来ているとはいえないので、以下のように改造した次第です。

 include/user_include/plugins/plg_page_analyze.inc.php の89行目辺り、get referer infoに手を加え、以下のようにします。

Continue reading...

| @技術/プログラミング

アクセス解析

 アクセス解析について興味深い記事を発見したので、記事を書かせて頂きます。(技術系サラリーマンの交差点: アクセス解析の話はまだまだ続く・・・

 そもそも僕がこのブログを訪れたのは、Yahoo!BBのIPアドレスを変更する方法を調べていてです。Yahoo!BBのIPアドレスはほぼ固定なようで(技術系サラリーマンの交差点: Yahoo!BBのIPアドレスはほとんど固定か)、それはちょっと嫌だな、リセットする方法はないのかなとGoogle検索していたのでした。すなわち、IPアドレスが固定だと、よそのブログなどでアクセス解析されている場合、僕の行動というのが筒抜けなんですね。アクセス時間などが分かるならば、僕が何時に寝て何時頃起きてるだとか、そういうことが分かってしまうんですよ。それってちょっと嫌ですよね。

Continue reading...