Geeklog増殖計画 http://mystral-kk.net 「Geeklogを全ての人に!」を目指して,関連記事掲載やプラグイン・カスタムブロック関数の開発を行っています。 geeklog@mystral-kk.net geeklog@mystral-kk.net Copyright 2012 Geeklog増殖計画 Geeklog Fri, 09 Mar 2012 18:27:14 +0900 ja OGP(Open Graph Protocol)プラグインv1.1.6 http://mystral-kk.net/article.php/20120309182416468 http://mystral-kk.net/article.php/20120309182416468 Fri, 09 Mar 2012 18:24:16 +0900 http://mystral-kk.net/article.php/20120309182416468#comments Geeklog -- プラグイン <p>OGPプラグインがサポートしていないアイテムにサイト訪問者がアクセスしたときに、エラーログ(error.log)に不要な警告メッセージが出力されるバグを修正した。<a href="http://mystral-kk.net/filemgmt/index.php/40">ダウンロードはこちらから</a>どうぞ。 ...</p> http://mystral-kk.net/trackback.php/20120309182416468 Geeklog-1.8.1のスタイルシートを最適化する http://mystral-kk.net/article.php/20120108161702758 http://mystral-kk.net/article.php/20120108161702758 Sun, 08 Jan 2012 16:17:02 +0900 http://mystral-kk.net/article.php/20120108161702758#comments GeekLog <p>dengenさんの実験に刺激を受けて、スタイルシートの最適化を行ってみた。その成果は<a href="http://mystral-kk.net/filemgmt/index.php/42">こちらからダウンロードできる</a>。実行したことは、次の3つ:</p> <ul> <li>@import命令を削除して、対象ファイルをインラインで展開する。</li> <li>url()関数の引数をstyle.cssからの相対パスに書き直す。</li> <li>CSSファイルを<a href="http://code.google.com/p/minify/">minify</a>を使ってMinify(縮小化)する。</li> </ul> <p>ノートPC上のWAMP環境でGoogle Chrome-16.0.912.75 + Page Speedを使用して、professional_cssテーマで測定すると、次のような結果になった。</p> <table> <caption>測定結果</caption> <tr> <th>項目</th><th>style.css最適化前</th><th>style.css最適化後</th></tr> <tr><th>リクエスト数</th><td>49</td><td>15</td></tr> <tr><th>転送量</th><td>132.32KB</td><td>74.74KB</td></tr> <tr><th>転送時間の平均値(秒)</th><td>1.14</td><td>0.68</td></tr> </table> <p>上記のデータはあくまで自分の環境での測定結果なので参考程度にとどめておいて欲しいが、割と効果を実感できそうな最適化ではある。 ...</p> http://mystral-kk.net/trackback.php/20120108161702758 OGP(Open Graph Protocol)プラグインv1.1.5 http://mystral-kk.net/article.php/20111231140845384 http://mystral-kk.net/article.php/20111231140845384 Sat, 31 Dec 2011 14:08:45 +0900 http://mystral-kk.net/article.php/20111231140845384#comments Geeklog -- プラグイン <p>旧バージョンからアップグレードする際に、バージョンによってはエラーになっていたバグを修正した。<a href="http://mystral-kk.net/filemgmt/index.php/40">ダウンロードはこちら</a>からどうぞ。 ...</p> http://mystral-kk.net/trackback.php/20111231140845384 OGP(Open Graph Protocol)プラグインv1.1.4 http://mystral-kk.net/article.php/20111218230127307 http://mystral-kk.net/article.php/20111218230127307 Sun, 18 Dec 2011 23:01:27 +0900 http://mystral-kk.net/article.php/20111218230127307#comments GeekLog <p>バージョン1.1.2を新規インストール後に、コンフィギュレーションで誤って「ユーザーIDとアプリケーションIDがdecimalでない」が表示されるバグを再度修正した。<a href="http://mystral-kk.net/filemgmt/index.php/40">ダウンロードはこちら</a>からどうぞ。 ...</p> http://mystral-kk.net/trackback.php/20111218230127307 OGP(Open Graph Protocol)プラグインv1.1.3 http://mystral-kk.net/article.php/20111217074511608 http://mystral-kk.net/article.php/20111217074511608 Sat, 17 Dec 2011 07:45:11 +0900 http://mystral-kk.net/article.php/20111217074511608#comments Geeklog -- プラグイン <p>バージョン1.1.2を新規インストール後に、コンフィギュレーションで誤って「ユーザーIDとアプリケーションIDがdecimalでない」が表示されるバグを修正した。<a href="http://mystral-kk.net/filemgmt/index.php/40">ダウンロードはこちら</a>からどうぞ。 ...</p> http://mystral-kk.net/trackback.php/20111217074511608 OGP(Open Graph Protocol)プラグインv1.1.2 http://mystral-kk.net/article.php/20111205180035397 http://mystral-kk.net/article.php/20111205180035397 Mon, 05 Dec 2011 18:00:35 +0900 http://mystral-kk.net/article.php/20111205180035397#comments Geeklog -- プラグイン <p>OGPプラグインは今回の機能アップで実用に耐えるものになったと思う。改善点は</p> <ol> <li>新たにリンクプラグイン、アンケートプラグイン、ファイル管理プラグイン、Downloadsプラグインをサポートした。</li> <li> 「いいね!」ボタンと「Facebookコメント機能」を表示するコンテンツの種類をコンフィギュレーションで設定できるようにした。</li> </ol> <p>好むと好まざるとにかかわらず、FacebookやGoogle+、Twitterなどと連携できないCMSはこれから非常な苦戦を強いられるだろう。このプラグインがGeeklogを少しでも延命できれば幸いである。<a href="http://mystral-kk.net/filemgmt/index.php/40">ダウンロードはこちらから</a>どうぞ。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/ogp">ogp ...</a> http://mystral-kk.net/trackback.php/20111205180035397 TinyMCEプラグイン-0.4.7 http://mystral-kk.net/article.php/20111119225446504 http://mystral-kk.net/article.php/20111119225446504 Sat, 19 Nov 2011 22:54:46 +0900 http://mystral-kk.net/article.php/20111119225446504#comments Geeklog -- プラグイン <p>MySQL-5.5以降でインストールに失敗していたバグを修正した。また、同梱するTinyMCEのバージョンを3.4.7に上げた。 ...</p> http://mystral-kk.net/trackback.php/20111119225446504 テーマエディタプラグイン-1.2.0 http://mystral-kk.net/article.php/20111106210746623 http://mystral-kk.net/article.php/20111106210746623 Sun, 06 Nov 2011 21:07:46 +0900 http://mystral-kk.net/article.php/20111106210746623#comments Geeklog -- プラグイン <p>テーマエディタプラグイン(themedit)をGeeklog-1.6で導入された自動インストール機能に対応させた。機能追加はないが、細かなバグ修正を行っている。 ...</p> http://mystral-kk.net/trackback.php/20111106210746623 サイトマッププラグイン-1.2.2 http://mystral-kk.net/article.php/20111105211640744 http://mystral-kk.net/article.php/20111105211640744 Sat, 05 Nov 2011 21:16:40 +0900 http://mystral-kk.net/article.php/20111105211640744#comments Geeklog -- プラグイン <p>懸案事項になっていたGeeklog-1.6以降の自動インストールに対応した。また、DataProxyプラグインがインストールされていない、ないし無効になっている場合にもエラーにならないようにした。 ...</p> http://mystral-kk.net/trackback.php/20111105211640744 Dbmanプラグイン-0.6.0 http://mystral-kk.net/article.php/2011103000025734 http://mystral-kk.net/article.php/2011103000025734 Sun, 30 Oct 2011 00:02:57 +0900 http://mystral-kk.net/article.php/2011103000025734#comments Geeklog -- プラグイン <p>Geeklog-1.8.0に対応した<a href="http://mystral-kk.net/filemgmt/index.php/41">Dbmanプラグイン-0.6.0</a>を公開した。主な変更点は以下の通り:</p> <ol> <li>古いPHP-4.x用のコードを書き換え、PHPの警告が出ないようにした。</li> <li>自動インストール時のバグを修正した。</li> <li>Geeklog-1.8.0で導入されたコンフィギュレーションのツールチップを表示するようにした。</li> <li>インストール用のドキュメントをHTML化して、admin/plugins/dbman/docsへ移動した。</li> </ol> <p>なお、このバージョン0.6.0から、Geeklog-1.4.x、1.5.xには対応しなくなった。古いバージョンを使っている人は、<a href="http://mystral-kk.net/filemgmt/index.php/10">Dbmanバージョン0.5.4</a>を使って欲しい。</p> <p><strong>10月31日追記</strong>: バージョン0.6.0で旧バージョンからのアップグレードがうまくいかなかったバグに対応したバージョン0.6.1を公開した。機能変更はない。 ...</p> http://mystral-kk.net/trackback.php/2011103000025734 Dataproxyプラグイン1.2.0 http://mystral-kk.net/article.php/20111024231548351 http://mystral-kk.net/article.php/20111024231548351 Mon, 24 Oct 2011 23:15:48 +0900 http://mystral-kk.net/article.php/20111024231548351#comments Geeklog -- プラグイン <p>Dataproxyプラグインを使用する際、DownloadsプラグインとMediagalleryプラグインで発生していたバグに対応した。<a href="http://mystral-kk.net/filemgmt/index.php/17">ダウンロードはこちらから</a>どうぞ。 ...</p> http://mystral-kk.net/trackback.php/20111024231548351 タグプラグイン-0.5.4 http://mystral-kk.net/article.php/20111002120138114 http://mystral-kk.net/article.php/20111002120138114 Sun, 02 Oct 2011 12:01:38 +0900 http://mystral-kk.net/article.php/20111002120138114#comments Geeklog -- プラグイン <p>管理画面で発生していたいくつかのバグを修正した。</p> <ol> <li>登録したタグを修正できなかったバグ</li> <li>空白文字のみの禁止タグを登録できていたバグ</li> <li>登録済みの禁止タグを重ねて登録しようとするとSQLエラーが発生するバグ</li> <li>チェックを入れずにタグを削除したり、禁止タグにしようとするとエラーが発生していたバグ</li> <li>管理画面のHTMLが不適切であったバグ</li> </ol> <p>パッチを提供していただいたYoshinori Taharaさん(dengenさん)には心から感謝いたします。 ...</p> http://mystral-kk.net/trackback.php/20111002120138114 OGP(Open Graph Protocol)プラグイン http://mystral-kk.net/article.php/20110903170919283 http://mystral-kk.net/article.php/20110903170919283 Sat, 03 Sep 2011 17:09:19 +0900 http://mystral-kk.net/article.php/20110903170919283#comments Geeklog -- プラグイン <p>しばらくVisual C#で遊んでいて、Geeklogを放置していたが、需要がありそうなので、<a href="http://ogp.me/">OGP(Open Graph Protocol)</a>のごく基本的な部分だけをサポートしたプラグインを作ってみた。<a href="http://mystral-kk.net/filemgmt/index.php/40">ダウンロードはこちらから</a>どうぞ。プラグインエディタからファイルをアップロードするとエラーになるので、面倒だが手動(FTPなど)でアップロードすること。</p> <p>現時点でサポートしているのは記事と話題と静的ページのみ。なお、<strong>OGPでは画像のURIが必須項目になっているので、画像のないものは出力できない</strong>。</p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/ogp">ogp</a> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a></p> <p>9月4日追記: FacebookのユーザーIDをコンフィギュレーションで指定するようにした。ユーザーIDがわからない場合は、<a href="http://apps.facebook.com/what-is-my-user-id/">このアプリケーション</a>が便利。JSONを読める人なら、https://graph.facebook.com/ユーザー名 でもOK。なお、アップグレードパスは用意していないので、昨日ダウンロードした人は、いったんプラグインをアンインストールすること。</p> <p>9月11日追記: Facebookの「いいね!」ボタンとコメント機能をサポートしたバージョン1.1.0を公開した(FacebookアプリケーションIDが必要)。なお、アップグレードパスは用意していないので、旧バージョンを使っている人は、いったんプラグインをアンインストールすること。</p> <p>9月11日追記: カレンダープラグインとカレンダーjpプラグインをサポートした。<a href="/admin/plugins/ogp/docs/japanese/install.html">同梱のマニュアル</a>をよく読んでから作業すること。 ...</p> http://mystral-kk.net/trackback.php/20110903170919283 Geeklog-1.8.0にアップグレード http://mystral-kk.net/article.php/20110703004422130 http://mystral-kk.net/article.php/20110703004422130 Sun, 03 Jul 2011 00:44:22 +0900 http://mystral-kk.net/article.php/20110703004422130#comments GeekLog <p>当サイトのGeeklogをバージョン1.7.0から1.8.0(日本語版)にアップグレードした。作業中にはまった点は次の2つ。</p> <ol> <li>うっかりテーマをnaturalgreenにしたままアップグレードしたため、アップグレード後、ログインしようとするとエラーが発生。<a href="http://www.geeklog.jp/downloads/index.php/file_rescue">緊急レスキューツール</a>を使用し、テーマをprofessionalに戻して復旧。</li> <li>Geeklog本体のアップグレード終了後、無効にしておいた静的ページ(staticpages)プラグインをアップグレードしようとすると、エラー発生。原理的には<a href="http://project.geeklog.net/tracking/view.php?id=1178">このIssue</a>と同じであることは分かっているので、phpMyAdminでデータベースを変更して対処。</li> </ol> <p>確認していないが、静的ページを作成していない場合、上記2.のエラーは発生しないと思う。無効にしたままでプラグインのアップグレードができればこんな苦労はしなくても済むのだが... まあ、ないものねだりをしてもしかたない。</p> <p><strong>教訓</strong></p> <ol> <li>アップグレード作業をする前にprofessionalテーマに戻す。</li> <li>本体に同梱されているプラグイン(静的ページ、リンク、カレンダー、SpamX、XMLSitemap)は有効にしたままでアップグレード作業をする。使用していないプラグインもアップグレード時には一時的に有効にするとよい。</li> ...</ol> http://mystral-kk.net/trackback.php/20110703004422130 GeeklogにSyntaxHighliterを組み込む http://mystral-kk.net/article.php/20110604161347970 http://mystral-kk.net/article.php/20110604161347970 Sat, 04 Jun 2011 16:13:47 +0900 http://mystral-kk.net/article.php/20110604161347970#comments GeekLog <p><a href="http://gltmatrix.com/">Auge</a>さんのツイートに興味を覚えて、JavaScriptベースの<a herf="http://alexgorbatchev.com/SyntaxHighlighter">SyntaxHighlighter</a>をGeeklogに組み込んでみた。意外とややこしいので、以下は自分用のメモ。</p> <h3>1. まずSyntaxHighligterが動作するようにする</h3> <ol> <li><a href="http://alexgorbatchev.com/SyntaxHighlighter/download/">SyntaxHighlighterのサイト</a>から最新版(2011年 6月の時点では3.0.83)をダウンロードする。</li> <li>ローカルで展開(解凍)する。<strong>syntaxhighlighter_バージョン番号</strong>というフォルダができるので、これを<strong>syntaxhighlighter</strong>にリネームして、公開領域の直下(lib-common.phpがあるフォルダ内)にアップロードする。</li> <li>Geeklogで使用しているテーマのheader.thtmlを編集する。&lt;/head&gt;タグの直前付近に次のコードを挿入する。<br> <pre class="brush: html"> &lt;!-- Load SyntaxHighlighter --&gt; &lt;script type="text/javascript" src="{site_url}/syntaxhighlighter/scripts/shCore.js"&gt;&lt;/script&gt; &lt;script type="text/javascript" src="{site_url}/syntaxhighlighter/scripts/shBrushXml.js"&gt;&lt;/script&gt; &lt;script type="text/javascript" src="{site_url}/syntaxhighlighter/scripts/shBrushCss.js"&gt;&lt;/script&gt; &lt;script type="text/javascript" src="{site_url}/syntaxhighlighter/scripts/shBrushPhp.js"&gt;&lt;/script&gt; &lt;script type="text/javascript" src="{site_url}/syntaxhighlighter/scripts/shBrushJScript.js"&gt;&lt;/script&gt; &lt;script type="text/javascript" src="{site_url}/syntaxhighlighter/scripts/shBrushPlain.js"&gt;&lt;/script&gt; &lt;script type="text/javascript"&gt; SyntaxHighlighter.all(); &lt;/script&gt; &lt;link rel="stylesheet" type="text/css" href="{site_url}/syntaxhighlighter/styles/shCore.css"{xhtml}&gt; &lt;link rel="stylesheet" type="text/css" href="{site_url}/syntaxhighlighter/styles/shThemeDefault.css"{xhtml}&gt; </pre></li> <p>なお、SyntaxHighlighter.autoloader()を使うともっと楽ができるはずなのだが、うまくいかなかったので、shBrush*.jsファイルを1個ずつ読み込んでいる。</p> <p>この時点でSyntaxHighlighterは使えるようになっており、記事エディタで次のようにしてコードを入力できる。</p> <pre class="brush: html"> &lt;pre class="brush: html"&gt; HTMLのコード &lt;/pre&gt; </pre> <p><strong>brush: html</strong>の部分を<strong>brush: css</strong>にすればCSSを、<strong>brush: js</strong>にすればJavaScriptを、<strong>brush: php</strong>にすればPHPのコードを入力できる。WYSIWYGエディタなど邪道で使わないという人はここで終わり。</p> <p><strong>2011年 6月 7日追記:入力するコードの中では、&lt; と &gt; は使用できず、それぞれ &amp;lt; &amp;gt; と入力する必要がある</strong>。</p></li> </ol> <h3>2. TinyMCEにsyntaxhlプラグインを組み込む</h3> <ol> <li><a href="https://github.com/RichGuk/syntaxhl">こちらのサイト</a>からsyntaxhlプラグインをダウンロードする。</li> <li>ローカルで展開(解凍)する。</li> <li>作成された <strong>RichGuk-syntaxhl-文字列</strong> フォルダを <strong>syntaxhl</strong> にリネームする。</li> <li><strong>syntaxhl/langs</strong> フォルダ内の <strong>en.js</strong> を <strong>ja.js</strong> という名前でコピーする。<strong>ja.js</strong> をテキストエディタで開き、1行目の<br> <pre class="brush: js"> tinyMCE.addI18n('en.syntaxhl',{ </pre> を<br> <pre class="brush: js"> tinyMCE.addI18n('ja.syntaxhl',{ </pre> に書き換えて保存する。</li> <li><strong>syntaxhl/langs</strong> フォルダ内の <strong>en_dlg.js</strong> を <strong>ja_dlg.js</strong> という名前でコピーする。<strong>ja_dlg.js</strong> をテキストエディタで開き、1行目の<br> <pre class="brush: js"> tinyMCE.addI18n('en.syntaxhl_dlg',{ </pre> を<br> <pre class="brush: js"> tinyMCE.addI18n('ja.syntaxhl_dlg',{ </pre> に書き換えて保存する。</li> <li><strong>syntaxhl</strong> フォルダを <strong>公開領域/tinymce/js/tiny_mce/plugins/</strong> にアップロードする。</li> <li>アップロード先のサーバーから、<strong>非公開領域/plugins/tinymce/addons.php</strong> をダウンロードして、テキストエディタで開き、565行目付近にある<br> <pre class="brush: php"> 'emojisoftbank' => array( 'plugins' => array(), 'buttons' => array('emojisoftbank'), 'html' => array( 'img' => array(), ), ), ); </pre> を <pre class="brush: php"> 'emojisoftbank' => array( 'plugins' => array(), 'buttons' => array('emojisoftbank'), 'html' => array( 'img' => array(), ), ), 'syntaxhl' => array( 'plugins' => array(), 'buttons' => array('syntaxhl'), 'html' => array(), ), ); </pre> に書き換え、保存してから、再びサーバーへアップロードする。</li> <li>アップロード先のサーバーから、<strong>公開領域/tinymce/js/tinymce_loader.js.php</strong> をダウンロードして、テキストエディタで開き、610行目付近にある<br> <pre class="brush: php"> // d.template_replace_values = { // username : "Some User", // staffid : "991234" // }; return d; }; </pre> を<br> <pre class="brush: php"> // d.template_replace_values = { // username : "Some User", // staffid : "991234" // }; d.extended_valid_elements = "textarea[cols|rows|disabled|name|readonly|class]"; return d; }; </pre> に書き換え、保存してから、再びサーバーへアップロードする。</li> <li>管理者としてサイトにログインしてから、管理者用メニューのTinyMCEをクリックし、設定を編集する。「ツールバー」の4つの欄のうちの好みの欄の最後に <strong>,syntaxhl</strong> を追加し、「プラグイン」の <strong>syntaxhl</strong>にチェックを入れてから、「送信」をクリックする。これでTinyMCEを使用する時に、ツールバーにペンのアイコンが追加される。</li> </ol> <h3>3. HTMLフィルターを無効にする</h3> <p>TinyMCEでsyntaxhlプラグインを使用すると、入力したコードが自動的に&lt;pre&gt;タグでくるまれてエディタウィンドウに挿入されるが、このとき&lt;pre&gt;タグの属性値に -(ハイフン)を含む文字列が設定される。HTMLフィルターを有効にしていると、この属性値がフィルタリングされて表示がおかしくなるので、コンフィギュレーション &gt; その他 &gt; HTMLフィルタで、「RootユーザはHTMLフィルタ無効 」を「はい」に変更して、保存する。これでおしまいです。お疲れさまでした。</p> <p>この記事を書くきっかけを与えていただいたAugeさんに感謝します。 ... http://mystral-kk.net/trackback.php/20110604161347970 タグプラグイン-0.5.3 http://mystral-kk.net/article.php/20110424100122280 http://mystral-kk.net/article.php/20110424100122280 Sun, 24 Apr 2011 10:01:22 +0900 http://mystral-kk.net/article.php/20110424100122280#comments Geeklog -- プラグイン <p>Geeklog-1.7.1と同時に公開された静的ページプラグインv1.6.3で導入されたテンプレート機能に対応するパッチをTomさんにもらったので、少し修正したものをバージョン0.5.3として公開した。<a href="http://mystral-kk.net/filemgmt/index.php/38">ダウンロードはこちら</a>。テンプレート機能を使っている人は少ないかもしれないが、<a href="http://wiki.geeklog.net/index.php/Static_Pages_Plugin#Template_Static_Pages">解説(英語)はこちら</a>をどうぞ。 ...</p> http://mystral-kk.net/trackback.php/20110424100122280 タグプラグイン-0.5.2 http://mystral-kk.net/article.php/20110104201702538 http://mystral-kk.net/article.php/20110104201702538 Tue, 04 Jan 2011 20:17:02 +0900 http://mystral-kk.net/article.php/20110104201702538#comments Geeklog -- プラグイン <p>Tomさんから提案のあったパーセントシステムを導入し、小さなバグを1つ修正したタグプラグイン-0.5.2をリリースした。従来のバージョンでは、タグレベルを計算するのに単純に閾値と比較を行うだけだったため、タグの出現頻度が高まるとすべてレベル9になっていた。これでは意味がない。今回のバージョンでは、タグの出現頻度がある数値(初期値は20)を超えると、閾値をもとにしてパーセントで計算するようにしたので、タグレベルが9に集中する現象は緩和されるはず。<a href="http://mystral-kk.net/filemgmt/index.php/20">ダウンロードはこちら</a>からどうぞ。Thanks, Tom!</p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">タグプラグイン</a> ...</p> http://mystral-kk.net/trackback.php/20110104201702538 GeeklogとPHPのバージョン http://mystral-kk.net/article.php/20110103072338252 http://mystral-kk.net/article.php/20110103072338252 Mon, 03 Jan 2011 07:23:38 +0900 http://mystral-kk.net/article.php/20110103072338252#comments GeekLog <p>拙作のPrecheckを見直そうと思い、Geeklogで要求されるPHPとMySQLのバージョンをまとめてみた。</p> <table> <caption>Geeklogのインストール要件</caption> <tr><th style="border: solid 1px black; padding: 3px;">Geeklogバージョン</th><th style="border: solid 1px black; padding: 3px;">PHPバージョン</th><th style="border: solid 1px black; padding: 3px;">MySQLバージョン</th><th style="border: solid 1px black; padding: 3px;">SQL Serverバージョン</th></tr> <tr><th style="border: solid 1px black; padding: 3px;">1.4.0~1.4.1</th><td style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;" rowspan="2">4.1.0</td><td style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;" rowspan="3">3.23.2</td><td style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;">サポートなし</td></tr> <tr><th style="border: solid 1px black; padding: 3px;">1.5.0~1.5.2</th><td style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;" rowspan="5">SQL Server 2000</td></tr> <tr><th style="border: solid 1px black; padding: 3px;">1.6.0~1.6.1</th><td style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;">4.3.0</td></tr> <tr><th style="border: solid 1px black; padding: 3px;">1.7.0~1.7.2</th><td style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;">4.4.0*</td><td rowspan="2" style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;">4.0.18</td></tr> <tr><th style="border: solid 1px black; padding: 3px;">1.8.0</th><td rowspan="2"style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;">5.2.0</td></tr> <tr><th style="border: solid 1px black; padding: 3px;">1.8.1~</th><td style="border: solid 1px black; padding: 3px; text-align: center; vertical-align: middle;">4.1.3</td></tr> </table> <p>なお、この記事を書いている時点ではGeeklog-1.7.1(sr1)までしか公開されていない。1.7.2は今年の早い時期に出る予定。この表の中でPHP-4.4.0*と書いている部分は以下の手段を使うことで4.3.0でもインストールできるようになる。</p> <ol><li>公開領域/admin/install/lib-install.phpをテキストエディタで開き、65行目付近にある<br> <code style="background-color: cyan; border: solid 1px blue; padding: 2px; margin: 3px;"> define('SUPPORTED_PHP_VER', '4.4.0');</code><br>を<br> <code style="background-color: cyan; border: solid 1px blue; padding: 2px; margin: 3px;"> define('SUPPORTED_PHP_VER', '4.3.0');</code><br>に変更する。</li> <li>非公開領域/system/pear以下のファイルをGeeklog-1.6.0~1.6.1のものに差し替える。</li> </ol> <p>特筆すべきは、Geeklog-1.8.0(今年の後半公開?)からはPHP-5.2.0が必要となること。今まで使えなかったXMLやJSON関連の機能、アクセス制御のできるクラスなどがやっと正式にサポートされる。これにあわせてGeeklogのコアをフルスクラッチで書き直すということはきっとなされないだろうが、とにかくよい知らせではある。いまだにPHP-4.xでGeeklogを使用されている方はそろそろPHP-5.2.0以降がサポートされている環境を検討した方がよいだろう。</p> <p>どうしてもPHP-4.x系統しか使えない場合(Red Hat Enterprise Linux 4やCentOS 4など)を考慮して、本家は2012年2月29日まではGeeklog-1.7系列のセキュリティ・パッチを配布すると宣言しているので、あと1年と2ヶ月ほどは余裕があることになるが、できるだけ早めの移行をお勧めする。<br>参考: <a href="http://www.geeklog.net/article.php/end-of-php4-support">http://www.geeklog.net/article.php/end-of-php4-support</a></p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/mysql">mysql</a></p> <p><strong>2011年 6月13日追記</strong>: Geeklog-1.8.0が正式に公開された。PHP-5.2.0以降が必須になる。なお、PHP-5.2.x系列は2011年 1月 6日に公開されたバージョン5.2.17で開発が終了しているので、これからサーバーを借りる人は5.3.x系列をサポートしているところがよいだろう。</p> <p><strong>2011年 7月 2日追記</strong>: Geeklog-1.8.1では、MySQLiクラスを使用するため、MySQL-4.1.3以降が必須になる。 ...</p> http://mystral-kk.net/trackback.php/20110103072338252 記事ベスト10表示用カスタム関数 http://mystral-kk.net/article.php/20101230094931512 http://mystral-kk.net/article.php/20101230094931512 Thu, 30 Dec 2010 09:49:31 +0900 http://mystral-kk.net/article.php/20101230094931512#comments GeekLog <p>Geeklog用に人気記事を表示するカスタム関数(custom_popular_items)を公開した。テンプレートやCSSで表示を柔軟に制御できる。<a href="http://mystral-kk.net/staticpages/index.php/top10_articles">当サイトで使用しているものはこちら</a>。<a href="http://mystral-kk.net/filemgmt/index.php/36">ダウンロードはこちらから</a>どうぞ。</p> <p>今年の後半は意識的にGeeklogに関わらなかった。日本のユーザーにはこれといって含むところはないのだが、本家の対応の遅さにはそろそろしびれを切らしかけている。今後は自分が作成したプラグインなどのバグ修正は行うつもりだが、それ以上のことはまだ決めていない。 ...</p> http://mystral-kk.net/trackback.php/20101230094931512 タグプラグイン-0.5.1 http://mystral-kk.net/article.php/20101228212120866 http://mystral-kk.net/article.php/20101228212120866 Tue, 28 Dec 2010 21:21:20 +0900 http://mystral-kk.net/article.php/20101228212120866#comments Geeklog -- プラグイン <p>昨日リリースしたタグプラグインで、バージョン0.3.2以前からアップグレードする際にエラーが発生していたバグを修正した。ご指摘いただいたひろろんさんに感謝。機能追加はなし。</p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">タグプラグイン</a> ...</p> http://mystral-kk.net/trackback.php/20101228212120866 タグプラグイン-0.5.0 http://mystral-kk.net/article.php/2010122720214465 http://mystral-kk.net/article.php/2010122720214465 Mon, 27 Dec 2010 20:21:44 +0900 http://mystral-kk.net/article.php/2010122720214465#comments Geeklog -- プラグイン <p>しばらくGeeklogから離れていたが、少し時間ができたので拙作のタグプラグインを更新した。今回からGeeklog-1.6.0以降が必要になる。変更点は以下の通り:</p> <ul> <li>新たに静的ページをサポート。</li> <li>記事のIDを変更した場合、エラーが発生していたバグを修正。</li> <li>トップメニューに「タグ」を表示しないオプションを追加。</li> </ul> <p><a href="http://mystral-kk.net/filemgmt/index.php/20">ダウンロードはこちらかどうぞ</a>。</p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">タグプラグイン</a> ...</p> http://mystral-kk.net/trackback.php/2010122720214465 RSSAggregator-1.3.2 http://mystral-kk.net/article.php/20100424100908613 http://mystral-kk.net/article.php/20100424100908613 Sat, 24 Apr 2010 10:09:08 +0900 http://mystral-kk.net/article.php/20100424100908613#comments GeekLog <p>先日からGeeklog.jpの掲示板の<a href="http://www.geeklog.jp/forum/viewtopic.php?showtopic=15042">このスレッド</a>で問題になっていた、XHTMLで" /&gt;"が消える問題だが、原因は拙作のRSSAggregatorだった Orz...</p> <p>phpblock_rssaggregator()の先頭で</p> <pre><code> if (!defined('XHTML')) { define('XHTML', ''); } </code></pre> <p>のように定義している。問題は、この関数をlib-custom.php内で読み込むため、テーマのfunctions.phpの設定や&#36;_CONF['doctype']よりも優先されてしまう、ということだ。RSSAggregatorを使用しているサイトはどんなテーマでもXHTMLではなくHTMLになってしまう。</p> <p>これはあまりにもまずいので、対応した<a href="http://mystral-kk.net/filemgmt/index.php/16">バージョン1.3.2</a>を公開した。といっても、上述の3行を削除しただけ。お騒がせして申し訳ないm(_ _)m。</p> <p><strong>教訓</strong>: lib-custom.php内で読み込む関数では、<strong>トップレベルで(= カスタム関数の外で)</strong>XHTML定数を定義してはならない。</p> <p><strong>2010年 4月24日追記</strong>: 「トップレベルで(= カスタム関数の外で)」の部分を加筆しました。</p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E9%96%A2%E6%95%B0">カスタム関数</a> ...</p> http://mystral-kk.net/trackback.php/20100424100908613 Dataproxyプラグイン1.1.7 http://mystral-kk.net/article.php/20100407213001913 http://mystral-kk.net/article.php/20100407213001913 Wed, 07 Apr 2010 21:30:01 +0900 http://mystral-kk.net/article.php/20100407213001913#comments Geeklog -- プラグイン <p>Geeklog-1.7.0b1ではDataproxyプラグイン、Autopingプラグインが動作しないという報告をもらったので、原因を調査してみると、前者はデータベーステーブルのフィールド名の変更、後者はAPIの変更のせいだった。それぞれ修正したバージョンを1.1.7、0.1.3として公開することにした。 ...</p> http://mystral-kk.net/trackback.php/20100407213001913 Twitterプラグイン0.3.2 http://mystral-kk.net/article.php/20100401224957347 http://mystral-kk.net/article.php/20100401224957347 Thu, 01 Apr 2010 22:49:57 +0900 http://mystral-kk.net/article.php/20100401224957347#comments Geeklog - テーマ <p>左右ブロックのテンプレートを変更し、アイコン画像を表示するようにした。テンプレート変数の説明をドキュメントに記述していなかったので、追加した。</p> <p>機能面ではだいたい希望のものができたので、後はOAuthを利用したログインをサポートすれば、このプラグインはほぼ完成。ただし、この最後の壁は高そう。 ...</p> http://mystral-kk.net/trackback.php/20100401224957347 Twitterプラグイン0.3.1 http://mystral-kk.net/article.php/20100324223731621 http://mystral-kk.net/article.php/20100324223731621 Wed, 24 Mar 2010 22:37:31 +0900 http://mystral-kk.net/article.php/20100324223731621#comments GeekLog <p>昨日公開したバージョン0.3.0では、キャッシュの制御がうまくいっておらず、「1時間あたり150回まで」というAPIの呼び出し制限を超えてしまっていた。このバグは修正できたと思う。</p> <p>もう一つのバグは、記事を投稿したときに自動的にTwitterにも投稿する機能で、bit.lyでURL短縮を指定しているにもかかわらず、URLの一部が欠けたり、URLが丸ごと消えてしまうというもの。bit.lyにログインして調べてみると、APIの呼び出しには成功している。</p> <p>この2つのバグの修正が確認できれば、バージョン0.3.1として公開するつもり。 ...</p> http://mystral-kk.net/trackback.php/20100324223731621 Twitterプラグイン0.3.0 http://mystral-kk.net/article.php/2010032400500533 http://mystral-kk.net/article.php/2010032400500533 Wed, 24 Mar 2010 00:50:05 +0900 http://mystral-kk.net/article.php/2010032400500533#comments Geeklog -- プラグイン <p>このバージョンからベータ版になった。新しい機能としては、</p> <ul> <li>mentionsやsaved searchesの結果を表示する機能</li> <li>より柔軟になった自動タグ[twitter:]</li> </ul> <p>など。なお、バージョン0.3.0には既知のバグがある。公開領域/admin/plugins/twitter/index.phpの56行目にある</p> <pre>Twitter_Status </pre> <p>を</p> <pre>Twitter_Statuses </pre> <p>に変更してほしい。 ...</p> http://mystral-kk.net/trackback.php/2010032400500533 Auto Pingプラグイン0.1.2 http://mystral-kk.net/article.php/20100320151635676 http://mystral-kk.net/article.php/20100320151635676 Sat, 20 Mar 2010 15:16:35 +0900 http://mystral-kk.net/article.php/20100320151635676#comments Geeklog -- プラグイン <p><a href="http://hiroron.com/">ひろろん</a>さんから提供していただいたコードを元にして、記事保存時にはping/pingbackを送信しないオプションを追加してみた。ついでにドキュメントにも少し加筆した。そのテストも兼ねてこの記事を書いている。 ...</p> http://mystral-kk.net/trackback.php/20100320151635676 TinyMCEプラグイン http://mystral-kk.net/article.php/20100301185412452 http://mystral-kk.net/article.php/20100301185412452 Mon, 01 Mar 2010 18:54:12 +0900 http://mystral-kk.net/article.php/20100301185412452#comments Geeklog -- プラグイン <p>他のCMSでは当たり前に使用できるTinyMCEを、Geeklogのコアコードに触らずに使用できるよう、プラグイン化に挑戦してみた。初期設定では、記事編集でFCKeditorを使用している場合を除き、すべてのtextareaタグでTinyMCEを使用できる。プラグインとして、<a href="http://hiroron.com/">ひろろんさん</a>に教えてもらったtinyBrowserプラグインを同梱しているので、画像の挿入/編集も簡単。<a href="http://mystral-kk.net/filemgmt/index.php/35">ダウンロードはこちらから</a>どうぞ。</p> <p>例によって、アルファ版なのでバグがたくさんありそうだが、人柱&フィードバック希望。</p> <p>----- edit -----<br> (2010年 3月 6日追記)<br> 最初のベータ版であるバージョン0.2.0を公開した。数々のバグが修正されていて、FCKeditorの代役が務まる程度にはなっていると思う。 ...</p> http://mystral-kk.net/trackback.php/20100301185412452 Auto Pingプラグイン http://mystral-kk.net/article.php/2010012411214445 http://mystral-kk.net/article.php/2010012411214445 Sun, 24 Jan 2010 11:21:44 +0900 http://mystral-kk.net/article.php/2010012411214445#comments Geeklog -- プラグイン <p>Geeklog SNSで話題になっていたPingの送信タイミング(Geeklogの場合は手動)を改善できるかもと思って、プラグインを試作してみた。</p> <ul> <li>記事を公開するするときに自動でPing(とPingback)を送信する。</li> <li>公開日時を未来にした記事の場合、この時点ではPingを送信しない。</li> <li>以降、Geeklogの擬似cron機能を使用して、公開日時に達した記事があれば、その時点でPingを送信する。</li> </ul> <p>以上の仕様で制作したつもりだが、なにぶんアルファ版なので例によって不具合はありそう。特に記事が多いサイトでは、PHPの実行時間内にPing送信が終わらない可能性があるので、そのつもりで使ってみて欲しい。<a href="http://mystral-kk.net/filemgmt/visit.php?lid=34">ダウンロードはこちらから</a>どうぞ。なお、このプラグインをインストールした時点で、既に公開日時に達している記事については、既にPingを送信したと見なすのでそのつもりで。 ...</p> http://mystral-kk.net/trackback.php/2010012411214445 snowテーマ http://mystral-kk.net/article.php/20091109221946401 http://mystral-kk.net/article.php/20091109221946401 Mon, 09 Nov 2009 22:19:46 +0900 http://mystral-kk.net/article.php/20091109221946401#comments Geeklog - テーマ <p>SNSでの私の戯言を気に留めてくださった<a href="http://white-stage.com/">みるくさん</a>が冬にふさわしいGeeklog用テーマの新作「<a href="http://white-stage.com/article.php/theme_snow">snow</a>」を発表された。</p> <p>「一面銀世界の中で、一箇所だけ常緑樹か一輪の花が咲いていて、寒々とした世界の中でただそこだけが生命の息吹を感じさせる」という茫洋としたイメージを十分に具象化しつつ、WAIproCSSバージョン2.4.0をベースにしているので、例によってアクセシビリティへの配慮も十分である。当サイトもさっそくデフォルトのテーマをsnowにした。わがままな私の願いを聞き入れてくださったみるくさんに心から感謝します。 ...</p> http://mystral-kk.net/trackback.php/20091109221946401 naturalgreenテーマ http://mystral-kk.net/article.php/20091031161632535 http://mystral-kk.net/article.php/20091031161632535 Sat, 31 Oct 2009 16:16:32 +0900 http://mystral-kk.net/article.php/20091031161632535#comments Geeklog - テーマ <p>美的センスのない自分がふだんGeeklogのテーマについて書くことはないのだが、みるくさんが今回発表された<a href="http://white-stage.com/article.php/naturalgreen">「naturalgreen」テーマ</a>を初めて見たときは、思わず感心してしまった。</p> <p>白を背景に、清々しく爽やかなグリーンのグラデーションと若葉の画像をアクセントにしたテーマは見ているだけでリフレッシュされる。それだけでなく、みるくさんがコツコツと完成度を高めている、アクセシビリティに配慮した<a href="http://white-stage.com/article.php/waiprocss24">WAIproCSSテーマ</a>をベースにしているので、実用性も高い。Geeklogを使っている人はぜひ、一度はご覧になってほしい。 ...</p> http://mystral-kk.net/trackback.php/20091031161632535 共有ブックマーク(SocialShare)プラグイン http://mystral-kk.net/article.php/200910311007305 http://mystral-kk.net/article.php/200910311007305 Sat, 31 Oct 2009 10:07:30 +0900 http://mystral-kk.net/article.php/200910311007305#comments Geeklog -- プラグイン <p><a href="http://gltmatrix.com/">Auge</a>さんがSNSで紹介していたGeeklog用のSocialShareプラグインが面白そうなので、当サイトにもインストールしてみた。各記事の下部に表示されている「共有する」のアイコンがそれ。シンプルだけど、あると便利。</p><p>例によって、Augeさんが<a href="http://gltmatrix.com/article.php/socialshareplugin">GLTMatrixのこのページ</a>と<a href="http://gltmatrix.com/article.php/socialshareplugin2">このページ</a>で懇切丁寧に説明されているので、ぜひ、ご一読のほどを。 ...</p> http://mystral-kk.net/trackback.php/200910311007305 Twitterプラグイン バージョン0.2.0リリース http://mystral-kk.net/article.php/2009101821543987 http://mystral-kk.net/article.php/2009101821543987 Sun, 18 Oct 2009 21:54:39 +0900 http://mystral-kk.net/article.php/2009101821543987#comments Geeklog -- プラグイン <p>まだアルファ版のレベルだが、バージョン0.2.0を公開した。変更点は以下の通り。</p> <ul> <li>新しいtweetの一部が表示されないバグを修正</li> <li>HTMLのマークアップをほぼ全てテンプレートに移動</li> <li>静的ページでセンターブロックに表示する機能を追加</li> <li>自動タグを使用し、記事内に表示する機能を追加</li> ...</ul> http://mystral-kk.net/trackback.php/2009101821543987 Twitterプラグイン http://mystral-kk.net/article.php/2009101723312667 http://mystral-kk.net/article.php/2009101723312667 Sat, 17 Oct 2009 23:31:26 +0900 http://mystral-kk.net/article.php/2009101723312667#comments Geeklog -- プラグイン <p>今年の春に試験的に実装していた<a href="http://twitter.com/">Twitter</a>用ライブラリを核にしたGeeklog用のプラグインを仮公開した。<strong>まだ、アルファ版の段階でバグが多いことが予想される</strong>ため、そのつもりで使って欲しい。自分のタイムラインとfollowingを混在して表示できるが、当サイトの右ブロックには自分のタイムラインしか表示していない。</p> <p>Geeklog-1.5.0以降、PHP-5.0.0以降が必要だが、MySQLのバージョンは問わない。自分が書いた記事や掲示板での発言を自動的にTwitterに投稿する機能もあるし、<a href="http://bit.ly/">bit.ly</a>のアカウントを持っていれば、投稿データ中のURLを自動的に短縮することもできる。<a href="http://mystral-kk.net/filemgmt/index.php?id=33">ダウンロードはこちらから</a>どうぞ。</p> <p>-- Edit --</p> <p>さっそくdengenさんからバグの指摘を頂いた。非公開領域/plugins/twitter/functions.incの153行目を</p> <pre><code> . &#36;base_uri . '/twitter/js/twitter.js"&gt;';</code></pre> <p>から</p> <pre><code> . &#36;base_uri . '/js/twitter.js"&gt;';</code></pre> <p>へ修正してほしい。これをしないと、つぶやくときに文字数がカウントダウンしない。dengenさんに感謝します。 ...</p> http://mystral-kk.net/trackback.php/2009101723312667 カスタム検索関数 http://mystral-kk.net/article.php/2009041017522153 http://mystral-kk.net/article.php/2009041017522153 Fri, 10 Apr 2009 17:52:21 +0900 http://mystral-kk.net/article.php/2009041017522153#comments GeekLog <p>現在のGeeklogで検索対象になるのは、記事と検索APIを実装しているプラグインのみ。つまり、公開領域/docs/にあるhtmlドキュメントは検索されていない。ドキュメントの翻訳にかかわった者としてはもったいないの一言に尽きる。そこで、検索APIを調べてみると、カスタム検索関数を追加できるよう設計されていることがわかった。APIのシグネチャを調べて実装したのが、<a href="http://mystral-kk.net/filemgmt/index.php?id=32">こちらのカスタム検索関数</a>。対象のhtmlファイルを力ずくで検索するのであまり格好いい方法ではないが、ないよりはましと思う。 ...</p> http://mystral-kk.net/trackback.php/2009041017522153 Twitterクライアント http://mystral-kk.net/article.php/20090410174519932 http://mystral-kk.net/article.php/20090410174519932 Fri, 10 Apr 2009 17:45:19 +0900 http://mystral-kk.net/article.php/20090410174519932#comments Geeklog -- プラグイン <p>GeeklogのTwitterクライアントを実装するのに必要なクラスライブラリを<a href="http://apiwiki.twitter.com/REST+API+Documentation">Twitterの公式ドキュメント</a>を元に作成したが、肝心のクライアントの構想が定まらない。自分のサイトにpublic_timelineをそのまま表示するのは無意味だし、自分のつぶやきだけを表示しても寂しいし、Friends(follower/following)を追加表示するのも意味があるようなないような... ...</p> http://mystral-kk.net/trackback.php/20090410174519932 KZ_Templateクラス http://mystral-kk.net/article.php/20090402203041560 http://mystral-kk.net/article.php/20090402203041560 Thu, 02 Apr 2009 20:30:41 +0900 http://mystral-kk.net/article.php/20090402203041560#comments GeekLog <p>GeeklogがHTMLのレンダリングに使用しているのはPHPLIBのTemplateクラスで、Dirkさんが何かのカンファレンスでその制作者に出会ったときに「まだそんなもの使っているの? Smartyを使えよ。」と言われたほどの代物。軽量だが、変数置換などの最低限の機能しかないため、条件分岐やループ構造を単体では実現できず、PHPコードでレンダリングしなければならない。</p> <p>開発時期が古いためか、コードを読んでも「なぜそんな実装?」と突っ込みたくなる箇所が多い。</p> <p>このような状況で、<a href="http://throwingdice.com/">Joeさん</a>さんがCaching Template Library(CTL)を開発・公開した。オリジナルのTemplateクラスに、1. 条件分岐やループ構造を追加 2. デフォルトの変数を定義 3. テンプレートをPHPコードにコンパイル・キャッシュして、実行速度アップを狙った優れものである。MediaGallery-1.6.xはこのCTLがないとインストールすることすらできない。</p> <p>上記1., 2.はありがたいが、モジュール版PHPが多い日本のホスティングサービスでは、パーミッションの関係で3.でつまずくことが多い。それと、これは私見だが、Geeklogのように各テンプレートファイルのサイズが小さい場合には、コンパイル・キャッシュの恩恵をあまり受けられないように思う。</p> <p>そこで、CTLからキャッシュ機能を抜き、代わりに<a href="http://www.trybase.com/~dengen/log/">dengenさん</a>が提唱しているTemplateクラスの高速化(file()をfile_get_contents()で、preg_replace()をstr_replace()に置き換えるなど。)と<a href="http://www.tktools.jp/">木下さん</a>が実装したOverRide機能(該当テンプレートファイルがない場合、デフォルトのテーマに自動的にフォールバックする機能)を追加したKZ_Templateクラスを開発した。<a href="http://mystral-kk.net/filemgmt/index.php?id=31">ダウンロードはこちらから</a>。まだ、開発段階なので、いろいろバグが残っていると思われるが、Geeklogのコアファイルを改変しなくても使えるので、それなりの価値はあると思う。 ...</p> http://mystral-kk.net/trackback.php/20090402203041560 メタタグプラグイン http://mystral-kk.net/article.php/20090324191759388 http://mystral-kk.net/article.php/20090324191759388 Tue, 24 Mar 2009 19:17:59 +0900 http://mystral-kk.net/article.php/20090324191759388#comments Geeklog -- プラグイン <p>表題の通り、記事や静的ページでHTMLの&lt;head&gt;セクションにkeywordsやdescriptionなどの&lt;meta&gt;タグを追加するメタタグ(Metatags)プラグインを作ってみた。<a href="http://mystral-kk.net/filemgmt/index.php?id=30">ダウンロードはこちらから</a>どうぞ。</p> <p>使い方は自動タグを利用する。keywordsの場合は、</p> <pre> [meta:key コンマで区切ったキーワードのリスト] </pre> <p>descriptionの場合は、</p> <pre> [meta:desc 説明] </pre> <p>を入力するだけ。詳しいことは同梱のinstall_ja.htmlに書いてあるので、そちらをどうぞ。 ...</p> http://mystral-kk.net/trackback.php/20090324191759388 Autosaveプラグイン http://mystral-kk.net/article.php/20090322165651770 http://mystral-kk.net/article.php/20090322165651770 Sun, 22 Mar 2009 16:56:51 +0900 http://mystral-kk.net/article.php/20090322165651770#comments Geeklog -- プラグイン <p>Geeklog-1.5.0以降では、セキュリティを向上させるため、記事や静的ページの編集ページにはトークンと呼ばれる使い捨てのキーが設定されている。編集を始めて20分経つとこのキーの有効期限が切れてしまい、「保存」をクリックしても保存できなくなっていた。これはバグではなく、仕様である。</p> <p>自分の場合は、保存する前に編集エリアで ctrl-A, ctrl-C を押してOSのバッファに保存する癖がついているので、仮に保存に失敗してもさほど気にならないが、中にはむかっとくる人もいるだろう。</p> <p>そのような人に向かって「これは仕様です」ではgeek以外に使ってもらえないので、定期的に自動保存を行うプラグインを作成した。<a href="http://mystral-kk.net/filemgmt/index.php?id=29">ダウンロードはこちらからどうぞ</a>。<strong>なお、JavaScriptを有効にしておくこと。それと、このプラグインを使用しても時間切れになること自体は防げない</strong>ので、自動保存の間隔を短く設定することをお勧めする。設定は、「コンフィギュレーション」→「Autosave」から。初期値は10分。</p> <p>まだ、開発段階なので、バグが含まれる可能性あり。そのつもりでどうぞ。 ...</p> http://mystral-kk.net/trackback.php/20090322165651770 Style Viewer公開 http://mystral-kk.net/article.php/20090221081143400 http://mystral-kk.net/article.php/20090221081143400 Sat, 21 Feb 2009 08:11:43 +0900 http://mystral-kk.net/article.php/20090221081143400#comments JavaScript <p>当サイトでデモを行っていたStyle Viewerを公開した。単なるJavaScriptなので、Geeklogだけでなく、どのようなWebアプリケーションにも使用できる。使用法は同梱のreadme_ja.txtを参照のこと。Geeklog向けにprofessionalとProfessionalCSSテーマ用の差し替えファイルを同梱している。<a href="http://mystral-kk.net/filemgmt/index.php?id=28">ダウンロードはこちらから</a>どうぞ。</p> <p>なお、Geeklog以外をご使用で、かつ、&lt;script&gt;タグの書き方もわからないという人は手を出さない方が吉。 ...</p> http://mystral-kk.net/trackback.php/20090221081143400 Style Viewer http://mystral-kk.net/article.php/20090212223202273 http://mystral-kk.net/article.php/20090212223202273 Thu, 12 Feb 2009 22:32:02 +0900 http://mystral-kk.net/article.php/20090212223202273#comments GeekLog <p>最近、JavaScriptを勉強している。食わず嫌いだったが、きちんとした本(O'REILLY&reg;の「JavaScript(第5版)」や&quot;JavaScript: the Good Parts&quot;など)を読むと、結構面白い。何か実用的なものを作ってみたくなり、表題のStyle Viewerを試作中。マウスを動かすと、ツールチップと共に当サイトの右上ブロックにスタイル情報の一部が表示される。まだ、Firefoxでしか検証していないので、他のブラウザではうまく表示されない可能性大。しばらく放置して、需要があるようなら、プラグイン化することも検討するかも。</p> <p>(2009年 2月13日追記)JavaScriptを修正して、IE7、Opera9、Google Chromeでも正常に動作するようにした。 ...</p> http://mystral-kk.net/trackback.php/20090212223202273 テンプレート変数インジェクション http://mystral-kk.net/article.php/20090118100843793 http://mystral-kk.net/article.php/20090118100843793 Sun, 18 Jan 2009 10:08:43 +0900 http://mystral-kk.net/article.php/20090118100843793#comments GeekLog <p>Geeklog.jpの掲示板の<a href="http://www.geeklog.jp/forum/viewtopic.php?showtopic=12197">このスレッド</a>から始まった<a href="http://mystral-kk.net/filemgmt/index.php?id=26">more_article_linksカスタム関数</a>だが、実装している最中に考えたことを参考までに記す。</p> <ol> <li>header.thtmlの場合は、CUSTOM_templateSetVars() でテンプレート変数をセットする。</li> <li>header.thtml以外のテンプレートでは、CUSTOM_templateSetVars()がコールバックされないので、表示内容をレンダリングしているスクリプトにテンプレート変数をセットするコードを追加する。</li> </ol> <p>上記のどちらかの処理を行ってから、該当するテンプレートファイルにテンプレート変数をセットするプレースホルダ{var_name}を追加する、という手段をとる。2. の場合に<a href="http://wiki.geeklog.jp/index.php/%E8%A8%98%E4%BA%8B%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%AB%E3%83%91%E3%83%B3%E3%81%8F%E3%81%9A%E3%83%AA%E3%82%B9%E3%83%88%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B">Wikiに紹介されていた方法</a>を取ると、複数の <code>&#36;template-&gt;set_var('foo', 'bar');</code> を追加することになり、美しくない。それより CUSTOM_templateSetVars() の手法をまねて、Templateクラスのインスタンスへのリファレンスを引数にしてカスタム関数に渡し、カスタム関数内で必要なテンプレート変数をセットするようにすれば、レンダリングを担当しているスクリプトに追加するのは1行で済む。article.phpの例を示すと、</p> <pre><code> &#36;story_template-&gt;set_var('story_id', &#36;story-&gt;getSid()); &#36;story_template-&gt;set_var('story_title', &#36;pagetitle); CUSTOM_more_article_links(&#36;story_template, &#36;story-&gt;getSid()); &#36;story_options = array (); </code></pre> <p>現在の記事の前後の記事へのリンクを追加するには記事IDが必要になるので、CUSTOM_more_article_links()関数の第2引数に持たせている。この関数の宣言は次の通り:</p> <pre><code> function CUSTOM_more_article_links(&amp;&#36;template, &#36;sid) { </code></pre> <p>クラスインスタンスを参照渡しにするために、第1引数の前に &amp; をつけている。PHP5の場合、クラスインスタンスは自動的に参照渡しになるはずだが、PHP4の環境もまだ残っているので、安全性重視。</p> <p>上記の方法でテンプレート変数を追加すれば、本体スクリプトの修正が最小限で済むので、標準になればよいのにと思う。 ...</p> http://mystral-kk.net/trackback.php/20090118100843793 Geeklog-1.5用のPrecheck試作 http://mystral-kk.net/article.php/20090112234711595 http://mystral-kk.net/article.php/20090112234711595 Mon, 12 Jan 2009 23:47:11 +0900 http://mystral-kk.net/article.php/20090112234711595#comments GeekLog <p>少し時間ができたので、Geeklog-1.5.x用のPrecheck(インストール前診断)を試作してみた。db-config.phpの位置をビジュアルに探す機能とデータベースの接続をリアルタイムでチェックする機能付き。JavaScript(というか、DOM)の挙動の違いに戸惑った。Firefoxではエラーコンソール(+ Firebug)が克明にエラー原因教えてくれるので楽勝だが、IE7ではDeveloper Toolbarを入れていてもあまり役に立たない。ベースになるAjaxのライブラリは最低限の機能を備えた軽量のものをということで、<a href="http://www.sitepoint.com/blogs/2007/08/29/simply-javascript-the-core-library/">SitePointのcore.js</a>を使用した。興味のある方は、<a href="http://mystral-kk.net/filemgmt/index.php?id=25">こちらからダウンロード</a>してほしい。</p> <p>PS. なお、使用後は<strong>必ず、admin/installディレクトリごと削除すること。放置しておくと、サーバのファイルツリーがある程度見えてしまう危険性がある。</strong> ...</p> http://mystral-kk.net/trackback.php/20090112234711595 RSS Aggregator改造版にdescription追加 http://mystral-kk.net/article.php/2008122220122152 http://mystral-kk.net/article.php/2008122220122152 Mon, 22 Dec 2008 20:12:21 +0900 http://mystral-kk.net/article.php/2008122220122152#comments GeekLog <p>ユーザの方から「<a href="http://mystral-kk.net/filemgmt/index.php?id=16">RSS_Aggregator</a>でフィードのdescriptionを表示できないか?」というお問い合せがあった。何せ1年半ほど前に作ったスクリプトなので、覚えていない。アーカイブを引っ張り出してみると、わずかなコードの追加で実現できそうなことが分かったので、さっさと仕上げてアップロードした。ユーザの方からのフィードバック、リクエスト(あまり過大なものは困るが(^^;))こそがフリーソフトウェア作者を動かす力なのだと思う。 ...</p> http://mystral-kk.net/trackback.php/2008122220122152 Pollsプラグインで不可解な現象 http://mystral-kk.net/article.php/20081216214956487 http://mystral-kk.net/article.php/20081216214956487 Tue, 16 Dec 2008 21:49:56 +0900 http://mystral-kk.net/article.php/20081216214956487#comments Geeklog -- プラグイン <p>本家サイトの掲示板で問題になっているが、Geeklog-1.5.0-1.5.1になって、アンケート(polls)プラグインで削除・編集ができない場合が出てきている。<a href="http://www.geeklog.net/article.php/polls-plugin-vs-suhosin">Dirkさんの記事</a>によると、PHPのセキュリティを高めるための<a href="http://www.suhosin.org/">Suhosin</a>パッチで、一度にPOSTできるフォーム変数の数の初期値が200に制限されているため、この数を超えた大きなアンケートを作ると問題の現象が発生するとのこと。対策としては、</p> <ul> <li>php.iniを設定できる場合は、suhosin.post.max_varsの数を増やす。下記参照。</li> <li>アンケートプラグインの設定で、1問あたりの選択肢やオプションを減らす。</li> </ul> <p>目安としては、質問を10個、選択肢もそれぞれ10個ずつ作ると、フォーム変数の合計が300を越えるので、アウト。質問を5個、選択肢を8個ずつにすると、フォーム変数の合計は150個なのでセーフ。</p> <p>静的ページ(staticpages)で多数のフォーム変数を持つフォームを作成する場合も同様の現象が発生しそうだ。 ...</p> http://mystral-kk.net/trackback.php/20081216214956487 Pollsプラグインのバグ http://mystral-kk.net/article.php/20081102211749248 http://mystral-kk.net/article.php/20081102211749248 Sun, 02 Nov 2008 21:17:49 +0900 http://mystral-kk.net/article.php/20081102211749248#comments Geeklog -- プラグイン <p>Geeklog-1.5.1のpollsプラグインで新規アンケートを保存する際に既存のIDを指定すると、黙って上書きされるというバグを本家の<a href="http://project.geeklog.net/tracking/view.php?id=769">バグトラッカー</a>に登録したところ、「Mercurialのリポジトリでは修正されているはずなので確認してくれ」という返事が来た。TortoiseHGでpullして確認したところ、実際このバグは修正されていた。</p> <p>ここまではどうということのない話なのだが、じつはリポジトリの開発版をインストールする際に、"Undefined function curl_init" というこれまで見たことのないエラーが出た。コードを調べてみると、public_html/admin/lib-install.php の545-554行目で、指定されたURIが実際存在するかチェックするのにcURL関数を使用していた。</p> <p>Geeklogの次のバージョン(1.5.2?)では、必要とされるPHPの最低バージョンを現行の4.1.0から引き上げる(予想では、4.3.xくらい。4.x系列切り捨てはしばらくなさそう)ことが話題に上っている。これに加えてcURLエクステンションが必要となると、また敷居が高くなる。正式版では、PEARのHTTP_Requestなどで代用されることを望む。 ...</p> http://mystral-kk.net/trackback.php/20081102211749248 Geeklogの性能測定(その3) http://mystral-kk.net/article.php/20081011135758749 http://mystral-kk.net/article.php/20081011135758749 Sat, 11 Oct 2008 13:57:58 +0900 http://mystral-kk.net/article.php/20081011135758749#comments GeekLog <p><a href="http://mystral-kk.net/article.php/20081004070324783">前々回</a>と同じ環境で(config.class.phpのキャッシュ機能あり)、CTL(Caching Template Library)あり・なしで違いを測定してみた。時間の単位はms(ミリ秒)。結果は以下の通り。</p> <table border="1"> <tr><th colspan="2" class="aligncenter">CTLなし</th><th>&nbsp;</th><th colspan="2" class="aligncenter">CTLあり</th></tr> <tr><th>平均実行時間(ms)</th><th>平均比率(%)</th><th>項目</th><th>平均実行時間(ms)</th><th>平均比率(%)</th></tr> <tr><td class="aligncenter">9.8</td><td class="aligncenter">9.6</td><td class="aligncenter">index.php自体の読み込み</td><td class="aligncenter">16.2</td><td class="aligncenter">13.6</td></tr> <tr><td class="aligncenter">30.4</td><td class="aligncenter">29.8</td><td class="aligncenter">lib-common.phpインクルード</td><td class="aligncenter">30.2</td><td class="aligncenter">25.4</td></tr> <tr><td class="aligncenter">28.4</td><td class="aligncenter">27.8</td><td class="aligncenter">COM_siteFooter()</td><td class="aligncenter">34.4</td><td class="aligncenter">29.0</td></tr> <tr><td class="aligncenter">20.2</td><td class="aligncenter">19.8</td><td class="aligncenter">COM_siteHeader()</td><td class="aligncenter">21.6</td><td class="aligncenter">18.2</td></tr> <tr><td class="aligncenter">7.8</td><td class="aligncenter">7.7</td><td class="aligncenter">STORY_renderArticle()</td><td class="aligncenter">10.2</td><td class="aligncenter">8.6</td></tr> <tr><td class="aligncenter">2.8</td><td class="aligncenter">2.7</td><td class="aligncenter">lib-story.phpインクルード</td><td class="aligncenter">3.0</td><td class="aligncenter">2.5</td></tr> <tr><td class="aligncenter">102.0</td><td class="aligncenter">&nbsp;</td><td class="aligncenter">全体</td><td class="aligncenter">118.8</td><td class="aligncenter"></td></tr> </table> <p>意外な感じがするが、自分が使用している環境ではCTLの恩恵を感じられず、むしろほんのわずかだがスピードダウンする。CTLとは違う方法で、テンプレートライブラリをハックする方法を考えてみようか。 ...</p> http://mystral-kk.net/trackback.php/20081011135758749 Geeklogの性能測定(その2) http://mystral-kk.net/article.php/20081005160232211 http://mystral-kk.net/article.php/20081005160232211 Sun, 05 Oct 2008 16:02:32 +0900 http://mystral-kk.net/article.php/20081005160232211#comments GeekLog <p><a href="http://mystral-kk.net/article.php/20081004070324783">前回</a>と同じ環境(config.class.phpのキャッシュなし)で、public_html/index.phpにアクセスしたときに、lib-common.phpインクルードにかかる時間の内訳(5回の平均値)。時間の単位はms(ミリ秒)。0.2ms以下のものは適当に省いている。</p> <table> <tr><th>項目</th><th>実行時間</th><th>比率</th></tr> <tr><td>lib-common.php自体の読み込み</td><td>19.4</td><td>49.0%</td></tr> <tr><td>config-&gt;initConfig()</td><td>9.4</td><td>23.7%</td></tr> <tr><td>config-&gt;load_baseconfig()</td><td>3.1</td><td>7.9%</td></tr> <tr><td>lib-syndication.phpインクルード</td><td>1.5</td><td>3.8%</td></tr> <tr><td>staticpages::functions.incインクルード</td><td>1.3</td><td>3.3%</td></tr> <tr><td>links:functions.incインクルード</td><td>0.8</td><td>2.1%</td></tr> <tr><td>lib-plugins.phpインクルード</td><td>0.7</td><td>1.7%</td></tr> <tr><td>japanaese_utf-8.phpインクルード</td><td>0.6</td><td>1.4%</td></tr> <tr><td>polls::functions.incインクルード</td><td>0.5</td><td>1.2%</td></tr> <tr><td>smapx::functions.incインクルード</td><td>0.4</td><td>1.1%</td></tr> <tr><td>calendar::functions.incインクルード</td><td>0.3</td><td>0.9%</td></tr> <tr><td>SEC_getUserGroups()</td><td>0.2</td><td>0.6%</td></tr> <tr><td>合計</td><td>39.6</td><td>&nbsp;</td></tr> </table> <p>意外な感じがするのは、プラグインのfunctions.incをインクルードする時間が長いこと。同梱されている標準の5つのプラグインだけでも3.3ms(全体の8.7%)かかっている。</p> <p>ついでに、public_html/index.php自体も計測してみた。 <table> <tr><th>項目</th><th>平均実行時間(ms)</th><th>平均比率(%)</th></tr> <tr><td>index.php自体の読み込み</td><td>9.4</td><td>9.3%</td></tr> <tr><td>lib-common.phpインクルード</td><td>35.6</td><td>35.0%</td></tr> <tr><td>COM_siteFooter()</td><td>24.0</td><td>23.6%</td></tr> <tr><td>COM_siteHeader()</td><td>19.6</td><td>19.3%</td></tr> <tr><td>STORY_renderArticle()</td><td>7.1</td><td>7.0%</td></tr> <tr><td>lib-story.phpインクルード</td><td>2.6</td><td>2.5%</td></tr> <tr><td>全体</td><td>101.6</td><td>&nbsp;</td></tr> </table> <p>記事1件ごとにSTORY_renderArticle()が呼び出されるので、記事が増えるほど遅くなる。これは当然のことだが、COM_siteHeader(), COM_siteFooter()に莫大な時間がかかっているのは予想外だった。ちょっと調べた感じでは、この両関数から呼び出されるCOM_formatBlock()関数が遅いようだ。ここがボトルネックか? ...</p></p> http://mystral-kk.net/trackback.php/20081005160232211 Geeklogの性能測定 http://mystral-kk.net/article.php/20081004070324783 http://mystral-kk.net/article.php/20081004070324783 Sat, 04 Oct 2008 07:03:24 +0900 http://mystral-kk.net/article.php/20081004070324783#comments GeekLog <p>Geeklog-1.5.0からは&#36;_CONF変数がデータベースに格納されるようになったが、その実装方法があまりきれいではないので、速度低下を招くのではないかと思い、<a href="http://hiroron.com/">ひろろんさん</a>や<a href="http://www.trybase.com/~dengen/log/">dengenさん</a>と共にごく簡単なキャッシュを実装していた。大ざっぱに言うと10%程度のスピードアップになりそう。</p> <p>そのとき話題になったのがlib-common.phpのダイエット。このファイルはGeeklogの基本機能を実装し、必要なライブラリをインクルードしているが、1.5.1で200KBほどある。このlib-common.phpの中でも比較的使用されていないコードやインクルードファイルがあれば、使用時にインクルードすることで、サイズを減らせる。</p> <p>きちんと性能測定したいなあと思ってXdebug関連を探していたら、<a href="http://php.y-110.net/wiki/index.php?%A5%D7%A5%ED%A5%D5%A5%A1%A5%A4%A5%EA%A5%F3%A5%B0%A1%A7xdebug%20%2B%20WinCacheGrind">[PHPプロファイリング: Xdebug(Xdebug2) + WinCacheGrind]</a>というページを見つけた。早速このページの情報を元に、</p> <ol> <li>XdebugのMS Windows用最新モジュール(php_xdebug-2.0.3-5.2.5.dll)をダウンロードしてPHPのエクステンション用ディレクトリにコピー。</li> <li><a href="http://sourceforge.net/projects/wincachegrind/">WinCacheGrind</a>をダウンロードして、インストール。</li> <li>php.iniの書き換え。<br> <pre> [Zend] zend_extension_ts = "C:&#92;PHP&#92;ext&#92;php_xdebug-2.0.3-5.2.5.dll" xdebug.profiler_enable = 1 xdebug.profiler_output_name = cachegrind.out.profile xdebug.profiler_output_dir = "C:/temp/xdebug" xdebug.auto_trace = On </pre></li> </ol> <p>Geeklog-1.5.1のトップページにアクセスすると、lib-common.php処理にかかる時間は以下のようになった。</p> <table> <tr><th class="aligncenter" colspan="2">キャッシュなし</th><th class="aligncenter">&nbsp;</th><th class="aligncenter" colspan="2">キャッシュあり</th></tr> <tr><th class="aligncenter">実行時間(ms)</th><th class="aligncenter">比率(%)</th><th class="aligncenter">項目</th><th class="aligncenter">実行時間(ms)</th><th class="aligncenter">比率(%)</th></tr> <tr><td class="aligncenter">26.4</td><td class="aligncenter">52.2%</td><td class="aligncenter">lib-common.php読み込み</td><td class="aligncenter">20.6</td><td class="aligncenter">61.7%</td></tr> <tr><td class="aligncenter">11.9</td><td class="aligncenter">23.6%</td><td class="aligncenter">config-&gt;initConfig()</td><td class="aligncenter">0.4</td><td class="aligncenter">1.2%</td></tr> <tr><td class="aligncenter">3.1</td><td class="aligncenter">6.2%</td><td class="aligncenter">config-&gt;loadBaseConfig()</td><td class="aligncenter">3.6</td><td class="aligncenter">10.7%</td></tr> <tr><td class="aligncenter">1.8</td><td class="aligncenter">3.6%</td><td class="aligncenter">SEC_getUserGroups()</td><td class="aligncenter">1.8</td><td class="aligncenter">5.5%</td></tr> <tr><td class="aligncenter">1.0</td><td class="aligncenter">2.0%</td><td class="aligncenter">lib-syndication.php読み込み</td><td class="aligncenter">0.8</td><td class="aligncenter">2.4%</td></tr> <tr><td class="aligncenter">0.6</td><td class="aligncenter">1.3%</td><td class="aligncenter">lib-session.php読み込み</td><td class="aligncenter">1.1</td><td class="aligncenter">3.4%</td></tr> <tr><td class="aligncenter">0.4</td><td class="aligncenter">0.8%</td><td class="aligncenter">SEC_getUserPermissions()</td><td class="aligncenter">0.4</td><td class="aligncenter">1.2%</td></tr> <tr><td class="aligncenter">0.4</td><td class="aligncenter">0.8%</td><td class="aligncenter">lib-plugins.php読み込み</td><td class="aligncenter">0.6</td><td class="aligncenter">1.9%</td></tr> <tr><td class="aligncenter">0.1</td><td class="aligncenter">0.2%</td><td class="aligncenter">japanese_utf-8.php読み込み</td><td class="aligncenter">0.1</td><td class="aligncenter">0.3%</td></tr> <tr><td class="aligncenter">0.2</td><td class="aligncenter">0.4%</td><td class="aligncenter">setlocale()</td><td class="aligncenter">0.4</td><td class="aligncenter">1.2%</td></tr> <tr><td class="aligncenter">50.6</td><td class="aligncenter">&nbsp;</td><td class="aligncenter">合計</td><td class="aligncenter">33.4</td><td class="aligncenter">&nbsp;</td></tr> </table> <p>テスト環境は、Pentium M 1.1GHz、メモリ1.25GB、Windows XP+SP3、PHP-5.2.5、Apache-2.0.63、MySQL-4.0.18ntで、5回アクセスの平均値。</p> <p>キャッシュなしの方では、lib-common.phpの処理に合計で50.6ミリ秒かかり、そのうちlib-common.phpの読み込み自体に26.4ミリ秒かかっている。キャッシュありの方では、lib-common.phpの処理に合計で33.4ミリ秒かかり、そのうちlib-common.phpの読み込み自体に20.6ミリ秒かかっている。</p> <p>キャッシュありの方は、config-&gt;initConfig()の実行時間が大幅に短くなっている。config-&gt;loadBaseConfig()の時間は依然として長いが、これは内部でlib-database.phpをインクルードし、データベースに接続しているためで、短縮は難しそう。SEC_getUserGroups()に時間がかかるのはソースコードに注釈がある通り(lib-security.phpの88-90行目)だが、何らかのキャッシュ機能を実装できる可能性がある。となるとやはり、全体の50%から60%の時間を占めているlib-common.php自体の読み込みがボトルネックになる。もう少し、詳しく調べてみるつもり。 ...</p> http://mystral-kk.net/trackback.php/20081004070324783 インクルードファイル直接呼び出し攻撃防止策を追加 http://mystral-kk.net/article.php/20080926224053934 http://mystral-kk.net/article.php/20080926224053934 Fri, 26 Sep 2008 22:40:53 +0900 http://mystral-kk.net/article.php/20080926224053934#comments Geeklog -- プラグイン <p>Geeklog-1.5.1で、大文字小文字を区別しないファイルシステム(MS Windowsなど)で、インクルードファイルを直接呼び出すことが可能になっていた脆弱性が修正されたが、同様の修正を拙作のDataproxy, Dbman, Sitemap, Themeditプラグインにも行った。機能追加はなし。 ...</p> http://mystral-kk.net/trackback.php/20080926224053934 カスタム関数管理プラグイン http://mystral-kk.net/article.php/20080919085712169 http://mystral-kk.net/article.php/20080919085712169 Fri, 19 Sep 2008 08:57:12 +0900 http://mystral-kk.net/article.php/20080919085712169#comments Geeklog -- プラグイン <p>タイトルの通り、カスタム関数をオンラインで管理するプラグインを試作中。要望があれば公開するつもり。</p> <p>PS. テキストエディタとFTPしか使わない自分がこのプラグインを使うことはないだろうから、いまいちやる気が起きない。まあ、PHPでファイルをアップロードするスクリプトを書く練習にはなるだろう。</p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E9%96%A2%E6%95%B0">カスタム関数</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> ...</p> http://mystral-kk.net/trackback.php/20080919085712169 PHP-4.x系列でhtml_entity_decode()がエラー http://mystral-kk.net/article.php/20080914215101250 http://mystral-kk.net/article.php/20080914215101250 Sun, 14 Sep 2008 21:51:01 +0900 http://mystral-kk.net/article.php/20080914215101250#comments GeekLog <p>ユーザからのレポートで、 <tt>"cannot yet handle MBCS in html_entity_decode()"</tt> なるエラーが拙作のプラグインで発生しているらしい。Google先生に訊いてみると、PHP-4.xの場合、マルチバイトはサポートしていないとのこと。改めてマニュアルを読んでみると、確かにそう書いてあった。PHP-4.x系列を使わなくなって久しいので、気づかなかった。</p> <p>とりあえず、Dbman, Dataproxy, Sitemap, Themeditプラグインはエラーが出ないように修正したバージョンを公開した。</p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/dbman%2C">dbman,</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/dataproxy%2C">dataproxy,</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/sitemap%2C">sitemap,</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/themedit">themedit</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> ...</p> http://mystral-kk.net/trackback.php/20080914215101250 Dataproxyプラグイン-1.1.1 http://mystral-kk.net/article.php/20080911091052462 http://mystral-kk.net/article.php/20080911091052462 Thu, 11 Sep 2008 09:10:52 +0900 http://mystral-kk.net/article.php/20080911091052462#comments Geeklog -- プラグイン <p>Geeklog-1.5.0に同梱されているPolls-2.0.1プラグインでサイトマップがエラーになっていたが、データベースの構造が変化していたのが原因だった。対策を施した<a>Dataproxy-1.1.1プラグイン</a>を公開した。なお、Sitemapプラグインの方は変更する必要はありません。 ...</p> http://mystral-kk.net/trackback.php/20080911091052462 Google Summer of Code 2008の成果 http://mystral-kk.net/article.php/20080910001205283 http://mystral-kk.net/article.php/20080910001205283 Wed, 10 Sep 2008 00:12:05 +0900 http://mystral-kk.net/article.php/20080910001205283#comments GeekLog <p>本家の<a href="http://www.geeklog.net/article.php/summer-of-code-roundup-2008">この記事</a>によると、Geeklog本家から参加した6人のうち5人がプロジェクトを仕上げたそうだ。その成果は次の通り:</p> <ol> <li>コメントモデレーションキュー</li> <li>アップロードによるプラグインのインストール</li> <li>検索結果の表示方法改善</li> </ol> <p>5人のうち残りの2人はAptitudeCMS(旧称Geeklog-2)に取り組んでいた。コメントモデレーションキューに関しては、トラックバックモデレーションキューも併せて実装してほしかった。</p> <p>これらの成果物は、Geeklog-1.5.2以降のバージョンで、本体に取り込まれることだろう(GL-1.5.1はバグ修正のみ)。来年の4月くらいには公開されているだろうか... ...</p> http://mystral-kk.net/trackback.php/20080910001205283 Geeklog-1.5.1rc1公開 http://mystral-kk.net/article.php/20080908063728743 http://mystral-kk.net/article.php/20080908063728743 Mon, 08 Sep 2008 06:37:28 +0900 http://mystral-kk.net/article.php/20080908063728743#comments GeekLog <p>思っていたよりも早く、<a href="http://www.geeklog.net/article.php/geeklog-1.5.1rc1">RC1が公開</a>された。今度はバグ修正が主なので、正式版が出るまで2週間とかからないだろう。その時点から日本語版が出るまで、1ヶ月では無理だろうな... ...</p> http://mystral-kk.net/trackback.php/20080908063728743 Geeklog-1.5.1-RC1間近 http://mystral-kk.net/article.php/20080907182442996 http://mystral-kk.net/article.php/20080907182442996 Sun, 07 Sep 2008 18:24:42 +0900 http://mystral-kk.net/article.php/20080907182442996#comments GeekLog <p>本家のメーリングリストの情報によると、もうそろそろ(1~3日中?)GL-1.5.1のRC(リリース候補)版が出るらしい。これはほとんどバグフィックスだけの模様。</p> <p>Google Summer of Codeも終わったので、その成果を次期バージョン(1.5.2?)に取り入れる作業を行うことを考えると、RC版が出たら1.5.1の正式版が出るのは早そうだ。1.5.0日本語版で潰しているバグも多いので、1.5.1日本語版も、携帯対応を除けば、それほど苦労しなくても出せそう。 ...</p> http://mystral-kk.net/trackback.php/20080907182442996 当サイトをGeeklog-1.5.0へアップグレード http://mystral-kk.net/article.php/20080907161224179 http://mystral-kk.net/article.php/20080907161224179 Sun, 07 Sep 2008 16:12:24 +0900 http://mystral-kk.net/article.php/20080907161224179#comments GeekLog <p>今までGL-1.4.0sr6で運営していたサイトをGL-1.5.0へアップグレードした。非公開領域/config.phpの <code>&#36;_CONF['default_charset']</code> に 'UTF-8' をセットしておいたせいで、アップグレードすると元の記事が軒並み文字化け。これが小文字なら問題なかっただろう。system/database/mysql.class.php の143行目を</p> <pre> if (&#36;this-&gt;_charset == 'utf-8') { </pre> <p>から、</p> <pre> if (strcasecmp(&#36;this-&gt;_charset, 'utf-8') == 0) { </pre> <p>にハックしてやっと正常にアップグレードができた。<a href="http://code.google.com/p/geeklog-jp/">Google Code</a>の方はr417で対応した。このバグを潰すのに3時間くらいかかってしまった。 ...</p> http://mystral-kk.net/trackback.php/20080907161224179 旧gllabs系製品についての朗報 http://mystral-kk.net/article.php/20080904081915787 http://mystral-kk.net/article.php/20080904081915787 Thu, 04 Sep 2008 08:19:00 +0900 http://mystral-kk.net/article.php/20080904081915787#comments GeekLog <p>本家の<a href="http://www.geeklog.net/forum/viewtopic.php?showtopic=83952">このスレッド</a>によると、cordisteさん(= Geeklog Franceの::Benさん)がGeeklog用のMedia Gallery, Captcha, Dokuwiki, vThemesの開発を続けたい旨を打診し、glFusionのMarkさんと連絡を取った、ということだ。 ...</p> http://mystral-kk.net/trackback.php/20080904081915787 Bad Behavior2-2.0.23 http://mystral-kk.net/article.php/20080828221403652 http://mystral-kk.net/article.php/20080828221403652 Thu, 28 Aug 2008 22:14:00 +0900 http://mystral-kk.net/article.php/20080828221403652#comments Geeklog -- プラグイン <p>従来、gllabs関係者がサポートしていたプラグインは主に、</p> <ol> <li>Bad Behavior2</li> <li>CAPTCHA</li> <li>Dokuwiki</li> <li>mediagallary</li> </ol> <p>の4つで、glfusionへの移行に伴い、新バージョンが出なくなることが懸念されて(いた|いる)が、<a href="http://www.geeklog.net/article.php/bad-behavior-2.0.23">Bad Behavior2-2.0.23</a>がDirkさんによって先日公開され、CAPTCHAもひろろんさんの手によって、「CAPTCHA - 画像認証プラグイン(妹認証付)」(<a href="http://hiroron.com/filemgmt/index.php?id=53">自動インストーラ用レシピ</a>、<a href="http://hiroron.com/filemgmt/index.php?id=112">プラグイン本体</a>)という形でパワーアップして帰ってきた。</p> <p>残るDokuwikiは必要な人間がなんとかハックするだろうが、mediagallryは代替物がない。mediagallaryをフォークするか、gallary2とGeeklogとのブリッジである<a href="http://www.geeklog.net/filemgmt/index.php?id=865">G2Bridge</a>が本家で公開されているので、これに移行するか、全く新しいプラグインを開発することになるだろう。 ...</p> http://mystral-kk.net/trackback.php/20080828221403652 テーマエディタプラグイン 1.1.1、タグプラグイン 0.4.1を公開 http://mystral-kk.net/article.php/20080818220806850 http://mystral-kk.net/article.php/20080818220806850 Mon, 18 Aug 2008 22:08:00 +0900 http://mystral-kk.net/article.php/20080818220806850#comments Geeklog -- プラグイン <p>Geeklog-1.5.0のコンフィギュレーションUIに対応すべく更新していたテーマエディタプラグインとタグプラグインにDokuWikiプラグインと共存できないというバグが見つかった。原因は両プラグインのfunctions.incで&#36;confという変数を使ったこと。各プラグインのfunctions.incの中で使用する変数は、Geeklog内ではグローバルスコープになることをうっかり忘れており、この変数がDokuWikiの設定を保持している同名の&#36;conf変数を上書きしているせいで、エラーが発生していた。自分の注意力のなさにうんざり orz...</p> <p><a href="http://mystral-kk.net/filemgmt/index.php?id=13">テーマエディタプラグインの修正版はこちら</a>、<a href="http://mystral-kk.net/filemgmt/index.php?id=20">タグプラグインの修正版</a>はこちらからどうぞ。 ...</p> http://mystral-kk.net/trackback.php/20080818220806850 Dataproxyプラグイン、Sitemapプラグインを更新 http://mystral-kk.net/article.php/20080815235445641 http://mystral-kk.net/article.php/20080815235445641 Fri, 15 Aug 2008 23:54:45 +0900 http://mystral-kk.net/article.php/20080815235445641#comments Geeklog -- プラグイン <p><a href="http://mystral-kk.net/filemgmt/index.php?id=17">Dataproxyプラグイン</a>と<a href="http://mystral-kk.net/filemgmt/index.php?id=18">Sitemapプラグイン</a>がGeeklog-1.5.0に対応した。これで主要な自作プラグインはすべてGL-1.5.0に対応したことになる。まもなく、Geeklog-1.5.1のベータ版ないしリリース候補版が公開されるはずだが、バグ修正が主で、機能追加はほとんどないと思われる。 ...</p> http://mystral-kk.net/trackback.php/20080815235445641 秋芳洞 http://mystral-kk.net/article.php/20080812094227926 http://mystral-kk.net/article.php/20080812094227926 Tue, 12 Aug 2008 09:42:00 +0900 http://mystral-kk.net/article.php/20080812094227926#comments その他もろもろ <p>昨日は涼みがてらに山口県の秋芳洞へ行ってきた。外は35度近い猛暑だが、チケット売り場を過ぎ、洞窟から流れ出す川の畔を10メートルも歩くと急にひんやりとした。入り口前で撮った写真がこれ。</p> <img width="300" height="400" src="http://mystral-kk.net/images/articles/20080812094227926_1.jpg" alt=""> <p>中にはいると別天地の涼しさだったが、見学者が多かったのには参った。ガイドさんの説明を聞いている団体客が通路をふさぎ、中年のおっさんが三脚を持ち込んで写真やビデオを使っている。子どもの作文のネタのためとはいえ、少し疲れた。 ...</p> http://mystral-kk.net/trackback.php/20080812094227926 テーマエディタプラグイン 1.1.0 http://mystral-kk.net/article.php/20080811214552327 http://mystral-kk.net/article.php/20080811214552327 Mon, 11 Aug 2008 21:45:52 +0900 http://mystral-kk.net/article.php/20080811214552327#comments Geeklog -- プラグイン <p>Geeklog-1.5.0に対応したテーマエディタプラグイン-1.1.0を公開した。<a href="http://mystral-kk.net/filemgmt/index.php?id=13">ダウンロードはこちら</a>からどうぞ。機能追加はなく、GL-1.5.0のコンフィギュレーション対応、CSRF対策追加、バグ取りのみ。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog-1.5">geeklog-1.5</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%86%E3%83%BC%E3%83%9E%E3%82%A8%E3%83%87%E3%82%A3%E3%82%BF">テーマエディタ ...</a> http://mystral-kk.net/trackback.php/20080811214552327 PHP-4.x系列の終焉(本当におしまい) http://mystral-kk.net/article.php/2008080900524748 http://mystral-kk.net/article.php/2008080900524748 Sat, 09 Aug 2008 00:52:00 +0900 http://mystral-kk.net/article.php/2008080900524748#comments GeekLog <p>先日、<a href="http://www.php.net/archive/2008.php#id2008-08-07-1">PHP-4.4.9</a>がリリースされ、これで4.x系列に対するセキュリティパッチ提供も最後となった。</p> <p>PHPの安全性を高める<a href="http://www.suhosin.org/">Suhosin</a>も、<a href="http://www.suspekt.org/2008/08/08/php-4-requiescat-in-pace/">この記事</a>によると、今年いっぱいは4.xに対するパッチを提供するが、年が明けたら提供を打ち切るとのこと。いよいよPHP-5.x系列への移行を迫られる状況となった。GeeklogはPHP-5.xでも動作するが、そのパワー(クラス、インターフェースなど)を生かしているとはお世辞にも言えないので、そのうち、PHP-5.x専用にコードを書き直す気運が高まるかもしれない。 ...</p> http://mystral-kk.net/trackback.php/2008080900524748 DbmanプラグインがGeeklog-1.5.0に対応 http://mystral-kk.net/article.php/20080727001203617 http://mystral-kk.net/article.php/20080727001203617 Sun, 27 Jul 2008 00:12:03 +0900 http://mystral-kk.net/article.php/20080727001203617#comments Geeklog -- プラグイン <p>延び延びになっていたプラグインのアップデート第一弾ということで、DbmanをGL-1.5.0に対応させた。<a href="http://mystral-kk.net/filemgmt/index.php?id=10">ダウンロードはこちらから</a>どうぞ。機能追加はなく、GL-1.5.0のコンフィギュレーション対応、CSRF対策追加のみ。とはいえ、元のコードでADMIN_simpleList()を複数回使用していたので、これを1.4.xでも1.5.0でも動作するように変更するのと、コンフィギュレーションに対応させるのに時間がかかった。</p> <p>他のプラグインも更新を待っているのだが、続きはいつになることやら...</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog-1.5">geeklog-1.5</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/dbman">dbman ...</a> http://mystral-kk.net/trackback.php/20080727001203617 掲示板プラグインの脆弱性 http://mystral-kk.net/article.php/20080719230038742 http://mystral-kk.net/article.php/20080719230038742 Sat, 19 Jul 2008 23:00:00 +0900 http://mystral-kk.net/article.php/20080719230038742#comments Geeklog -- プラグイン <p>Geeklogの掲示板プラグインに脆弱性が発見された。検索機能でJavaScriptのフィルタリングが不十分なため,クロスサイトスクリプティング(XSS)の危険性があるらしい。<a href="http://www.geeklog.net/article.php/20080719093147449">Blaineさんによる元記事はこちら</a>からどうぞ。対策はバージョン2.7.1へアップグレードすること。<a href="http://www.geeklog.net/filemgmt/index.php/866">ダウンロードはこちら</a>からどうぞ。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3">セキュリティ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/xss">xss</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E6%8E%B2%E7%A4%BA%E6%9D%BF">掲示板 ...</a> http://mystral-kk.net/trackback.php/20080719230038742 Geeklogに2つの脆弱性 http://mystral-kk.net/article.php/20080705csrf_kses http://mystral-kk.net/article.php/20080705csrf_kses Sat, 05 Jul 2008 17:56:35 +0900 http://mystral-kk.net/article.php/20080705csrf_kses#comments GeekLog <p>遅ればせながら,先ほどGeeklog.jpに<a href="http://www.geeklog.jp/article.php/20080705csrf_kses">2つの脆弱性</a>に関する記事を投稿した。</p> <p>1つ目は,CSRF(Cross-Site Request Forgery)攻撃に関するもので,Geeklogに管理者としてログインしている場合,予期しないフォームを送信するなどの危険性がある。Geeklog-1.5.0では,フォーム表示時にデータベースにトークンを登録し,POST時に照合するというオーソドックスな対策をとっている。大規模なコードの改修を伴うため,<strong>Geeklog-1.4.xではこの問題に対応できない</strong>。せいぜい,管理者としてログインする期間を短くし,こまめにログアウトを心がけるしかない。</p> <p>2つ目は,Geeklog内部でHTMLフィルタとして使用されているksesライブラリに脆弱性が見つかったというもの。<strong>HTMLフィルタでstyle属性を許可していなければ</strong>,問題にはならない。まあ,普通の管理者なら,一般ユーザに &lt;img&gt;タグや style属性の使用を許可してはいないだろうが...</p> <p>そろそろ当サイトも1.5.0にアップグレードしなければならない状況になったようだ。しばらくは,自作のプラグインのアップグレードにまで手が回りそうにない。</p> <p>タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3">セキュリティ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/csrf">csrf</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/kses">kses</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog-1.5">geeklog-1.5</a> ...</p> http://mystral-kk.net/trackback.php/20080705csrf_kses Geeklog本家,GSoC用にMercurial採用 http://mystral-kk.net/article.php/20080626082943714 http://mystral-kk.net/article.php/20080626082943714 Thu, 26 Jun 2008 08:29:00 +0900 http://mystral-kk.net/article.php/20080626082943714#comments GeekLog <p>Geeklog本家のバージョン管理にはCVSを用いているが,</p> <ol> <li>ディレクトリの移動をしにくい。</li> <li>コミット権を持った人以外はコミットできない。</li> </ol> <p>という点がいつも問題になる。他の開発者たちは「せめてSubversionにしよう」と提案するが,Dirkさんは「CVSとSubversionは大して違わない。今から新規にプロジェクトを興すならわざわざCVSを選ぶ理由はないが,現状はうまくいっているからCVSで運用する。」と言っていた。</p> <p>今朝流れたメーリングリストでは,Dirkさんが「GSoCに取り組む学生たちのコードを管理するのに分散型バージョン管理システムを使いたい。Linuxカーネルのコード管理に使われているGitについて調べてみたが,似たようなコマンドがたくさんあって引いてしまう(全部で152コマンド)。他に誰も口にしないから,自分は<a href="http://www.selenic.com/mercurial/wiki/">Mercurial</a>を使おうと思う。これは最終決定ではなく,お試しだ。」と発言していた。本家のWiki上には<a href="http://wiki.geeklog.net/wiki/index.php/Using_Mercurial">Mercurialに関するページ</a>もできている。GeeklogがGSoCで取り組む内容をいち早く知りたい人は上記ページをチェックしてほしい。 ...</p> http://mystral-kk.net/trackback.php/20080626082943714 Geeklog-1.5以降 http://mystral-kk.net/article.php/20080623231627175 http://mystral-kk.net/article.php/20080623231627175 Mon, 23 Jun 2008 23:16:27 +0900 http://mystral-kk.net/article.php/20080623231627175#comments GeekLog <p>メーリングリストでのDirkさんの話によれば,今後の予定として,</p> <ul> <li>Geeklog 1.5.0-1: バグ修正のみ。リリース目標は7月後半。</li> <li>Geeklog 1.5.1: バグ修正+ユーザが投稿した機能拡張パッチ適用。リリース目標はGoogle Summer of Codeの終わり頃,つまり,9月上旬から中旬。</li> <li>Geeklog-1.5.2ないし1.6.0: Google Summer of Codeの成果を統合し,他の機能追加。目標は今年の終わりから来年の初め。 </ul> <p>を考えているが,みんなの意見は?というコメントが出ていた。Blaineさん,Vinnyさん,Mikeさんは,1.5.1でJoeさんのCaching Template Libraryを導入してはどうかと口を揃えて言っている。Blaineさんは,現在のコンフィギュレーションエディタは直感的でなく使いにくいため,今回のGSoCで改良に取り組む学生を期待したが,適当な応募者がおらず,指導者(メンター)も不足していたと発言していた。</p> <p>中でも過激なのはMikeさんで,1.5.1のベータ版を7月半ばに,最終版を7月31日に公開すべきだと発言している。他のオープンソースWebアプリケーションと同様,今後のロードマップとリリース予定を公開することでユーザからの信頼を高め,コアチームとユーザのコミュニティが協力し,コアチームの責任をDirkさんだけでなく,全員で共有すべきだと提言している。すべて,Geeklog.jpにも当てはまることで,耳が痛い。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog-1.5">geeklog-1.5 ...</a></li> http://mystral-kk.net/trackback.php/20080623231627175 Geeklog 1.5公開 http://mystral-kk.net/article.php/Geeklog15 http://mystral-kk.net/article.php/Geeklog15 Sun, 15 Jun 2008 23:23:40 +0900 http://mystral-kk.net/article.php/Geeklog15#comments GeekLog <p>先ほど<a href="http://www.geeklog.net/article.php/geeklog-1.5.0">本家</a>で1.5.0が公開された。Firefox-3の公開よりは早かった。</p> <p>日本語版は,有志が作業中だが,1ヶ月と経たないうちにGeeklog.jpでも公開できるだろう。1.5.0ではインストールが格段に容易になり,OpenIDやAtomPubもサポートされた。従来,config.phpをせっせといじっていた設定もオンラインのコンフィギュレーションが可能になった。そういう意味では初心者にとって敷居が低くなったと言えるが,また,不安の要素でもある。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog-1.5">geeklog-1.5 ...</a> http://mystral-kk.net/trackback.php/Geeklog15 Geeklog 1.5 BETA1 http://mystral-kk.net/article.php/Geeklog15BETA1 http://mystral-kk.net/article.php/Geeklog15BETA1 Tue, 06 May 2008 07:46:22 +0900 http://mystral-kk.net/article.php/Geeklog15BETA1#comments GeekLog 最近Geeklogを触っていないが,本家で1.5BETA1が公開された。同時に言語ファイルの翻訳を求めている。Configuration UIで大量の翻訳が必要になるとのこと。また,同梱プラグインの言語ファイルの翻訳も求めている。メーリングリストでは,Geeklog-1.5は今月中(確か5月26日?)に公開するとDirkさんが発言していたので,Release Candidateもすぐに公開されることだろう。<br /> <br /> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog-1.5">geeklog-1.5 ...</a> http://mystral-kk.net/trackback.php/Geeklog15BETA1 geeklog2mtカスタム関数,mt2geeklogカスタム関数機能追加 http://mystral-kk.net/article.php/2008022820145261 http://mystral-kk.net/article.php/2008022820145261 Thu, 28 Feb 2008 20:14:52 +0900 http://mystral-kk.net/article.php/2008022820145261#comments GeekLog CATEGORY IDというproprietaryなメタタグをサポートするバージョンを公開した。トピックIDがfooとなっている記事を全てbarに変えるだけなら,phpMyAdminを使って<br /> <br /> UPDATE `gl_stories`<br /> SET `tid` = 'bar' <br /> WHERE `tid` = 'foo'<br /> <br /> とすれば,一発なのだが... ... http://mystral-kk.net/trackback.php/2008022820145261 タグプラグイン-0.3.2 http://mystral-kk.net/article.php/20080228194720766 http://mystral-kk.net/article.php/20080228194720766 Thu, 28 Feb 2008 19:47:20 +0900 http://mystral-kk.net/article.php/20080228194720766#comments Geeklog -- プラグイン タグをテンプレート変数として出力するオプション($_TAG_CONF['publish_as_template_vars'])に関するマニュアルの誤り訂正及び,アンダースコアの扱いを改善した。<br /> <br /> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0">タグ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン ...</a> http://mystral-kk.net/trackback.php/20080228194720766 タグプラグイン-0.3.1 http://mystral-kk.net/article.php/20080123223618783 http://mystral-kk.net/article.php/20080123223618783 Wed, 23 Jan 2008 22:36:18 +0900 http://mystral-kk.net/article.php/20080123223618783#comments Geeklog -- プラグイン <p>バージョン0.2.0から0.3.0にアップグレードするときにエラーが発生する問題に対処した。また,タグメニューの横に,含まれるアイテム数を表示するオプションを追加した。このプラグインの更新もそろそろ一段落つきそうだ。次は何を作ろうか...</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0">タグ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン ...</a> http://mystral-kk.net/trackback.php/20080123223618783 タグプラグイン-0.2.0 http://mystral-kk.net/article.php/20080114215535447 http://mystral-kk.net/article.php/20080114215535447 Mon, 14 Jan 2008 21:55:35 +0900 http://mystral-kk.net/article.php/20080114215535447#comments Geeklog -- プラグイン <p>タグプラグインに関して,「間違ったタグを削除するインターフェースの提供を!」という声が多かったので,追加してみた。その他,URLリライト時に記事へのリンクがおかしくなるバグ修正や,インストール時のタグクラウドブロック自動作成などの機能を追加してみた。</p> <p>今,考えているのは,タグ付けを利用した多階層のメニュー作成。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0">タグ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン ...</a> http://mystral-kk.net/trackback.php/20080114215535447 タグプラグイン公開 http://mystral-kk.net/article.php/20080113000621317 http://mystral-kk.net/article.php/20080113000621317 Sun, 13 Jan 2008 00:06:21 +0900 http://mystral-kk.net/article.php/20080113000621317#comments Geeklog -- プラグイン 先日から試作していたGeeklogの記事にタグ付けを行うプラグインを公開した。まだ,開発段階だが,そこそこ便利に使えると思う。<br /> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0">タグ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog</a> ... http://mystral-kk.net/trackback.php/20080113000621317 タグもどきプラグイン試作中 http://mystral-kk.net/article.php/20080108211306485 http://mystral-kk.net/article.php/20080108211306485 Tue, 08 Jan 2008 21:13:06 +0900 http://mystral-kk.net/article.php/20080108211306485#comments Geeklog -- プラグイン <p>Geeklogの記事は複数のカテゴリを指定できないので,後から記事を探そうと思ったら全文検索するしかない。他のブログシステム・CMSなら,マルチカテゴリやタグをサポートしているのに,実にお寒い状況だ。</p> <p>そこで,タグ置き換えを利用し,記事に自分でタグを埋め込んでタグ付けをするプラグインを考えている。当サイトの右ブロックにはタグクラウドもどきとグローバルメニューにはタグが表示されているが,まだほんの試作段階だ。</p> <p>今,ひっかかっているのは,プラグインのfunctions.incから外部スタイルシートを読み込むようにしていて,IE6では読み込むが,Firefox-2.0.0.11だと読み込まないということ。正確に言うと,FFでも読み込みはするがなぜか反映されない。ブラウザのキャッシュクリアやCSSファイルの文字コード指定の確認,スタイルに!importantを付加してもなぜか反映されない。でもこのCSSファイルをテーマデフォルトのstyle.cssからインポートするとFFでも反映される。なぜだろう?</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0">タグ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%BF%E3%82%B0%E3%82%AF%E3%83%A9%E3%82%A6%E3%83%89">タグクラウド</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E5%A4%96%E9%83%A8%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%82%B7%E3%83%BC%E3%83%88">外部スタイルシート</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/ie6">ie6</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/firefox">firefox ...</a> http://mystral-kk.net/trackback.php/20080108211306485 geeklog2mtカスタム関数 http://mystral-kk.net/article.php/20080104223904351 http://mystral-kk.net/article.php/20080104223904351 Fri, 04 Jan 2008 22:39:00 +0900 http://mystral-kk.net/article.php/20080104223904351#comments GeekLog <p>Geeklogの記事をMovable Type(R)形式のフォーマットでエクスポートするカスタム関数を作成してみた。これでいつでもGeeklogから他のブログシステムやCMSに移行できると思うと,安心して記事を書ける。まだ開発段階だが,そこそこ使い物になると思うので,必要な方は<a href="http://mystral-kk.net/filemgmt/index.php?id=19">こちらからダウンロード</a>してください。</p> <p><strong>(2008年 1月 5日追記)</strong> エクスポートされたデータのうち,BODYを取り込めなかったバグを修正したバージョン0.1.1を公開しました。</p> <p><strong>(2008年 1月 7日追記)</strong> seesaaに取り込む場合は,phpblock_geeklog2mt.phpの336行目を<br> <pre><code> . 'STATUS: ' . (&#36;S&#91;'draft_flag'&#93; == 0 ? 'publish' : 'draft') . LB </code></pre> から <pre><code> . 'STATUS: ' . (&#36;S&#91;'draft_flag'&#93; == 0 ? 'Publish' : 'Draft') . LB </code></pre> に変えないと,インポートした記事がみな下書き状態になるというレポートをkinoさんからいただいた。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/mt">mt</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88">インポート</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog2mt">geeklog2mt</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E9%96%A2%E6%95%B0">カスタム関数 ...</a> http://mystral-kk.net/trackback.php/20080104223904351 Dataproxyプラグイン,サイトマッププラグイン完成 http://mystral-kk.net/article.php/200711042225512 http://mystral-kk.net/article.php/200711042225512 Sun, 04 Nov 2007 22:25:00 +0900 http://mystral-kk.net/article.php/200711042225512#comments Geeklog -- プラグイン <p>Geeklogのコンテンツ取得を代行する[tech:Dataproxyプラグイン]とこのプラグインを利用する[tech:サイトマッププラグイン]がとりあえず完成し,当サイトとGeeklog.jpにて公開した。Dataproxyの方はまだ,基本的なデータ取得機能しか持たせておらず,キャッシュ管理機能などは実装していないが,そこそこ使えるものになっていると思う。サイトマッププラグインは,文字通りサイトマップの表示に加えて,Googleサイトマップも作成できる。拙作のGoogle Sitemap Generatorを使用されている方は,サイトマッププラグインをインストールする前に削除しておいてほしい。なお,サイトマップ・Googleサイトマップに含めることができるデータソースは以下の通り:</p> <ul> <li>記事</li> <li>コメント</li> <li>トラックバック</li> <li>静的ページプラグイン</li> <li>カレンダプラグイン</li> <li>リンクプラグイン</li> <li>アンケートプラグイン</li> <li>DokuWikiプラグイン</li> <li>掲示板プラグイン</li> <li>ファイル管理プラグイン</li> <li>FAQプラグイン</li> <li>メディアギャラリプラグイン</li> </ul> <p>サイトマッププラグインの設定は全て管理画面から行え,config.phpを編集する必要はなくなっている。いったんインストールが済めば,Googleサイトマップの方は1日に1回自動的に更新されるので,lib-custom.php等をいじる必要もない。Geeklogサイトのコンテンツが赤裸々にあぶり出されるという意味では,怖いプラグインを作ってしまった。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/dataproxy">dataproxy</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/sitemap">sitemap</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%B5%E3%82%A4%E3%83%88%E3%83%9E%E3%83%83%E3%83%97">サイトマップ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン ...</a> http://mystral-kk.net/trackback.php/200711042225512 DataProxyプラグイン? http://mystral-kk.net/article.php/20071014095827919 http://mystral-kk.net/article.php/20071014095827919 Sun, 14 Oct 2007 09:58:00 +0900 http://mystral-kk.net/article.php/20071014095827919#comments Geeklog -- プラグイン <p>サイトマップとGoogleサイトマップを作成していて思ったのだが,どちらのプラグインも他のプラグインからデータを取り出す作業はほぼ共通。つまり,各プラグインごとにSQLを組み立て,データベース・テーブルからデータを読み込む。SQLを書く過程では,ユーザの権限(や多言語機能を有効にしている場合には,言語サフィックス)を意識しなければならない。IDを指定すれば,コンテンツを返すAPIを各プラグインが実装していれば少しは楽ができるのだが,Geeklogにはない(はず)。RSSフィード作成やサイトカレンダを作成するときも事情は同じ。みんなが車輪の再発明を行っている。DRY(Don't Repeat Yourself)ではなくRY(Repeat Yourself)というわけだ。</p> <p>ということは,各プラグインからのデータ取り出しとキャッシュ管理を専門に行うプラグインを1つ作り,他のプラグインはこのプラグインが公開しているAPI経由でデータを取得すれば,みんなが幸せになれそうだ。プラグインの名前は,ContentsProxyでは長ったらしいので,DataProxyとでもしようか。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%B5%E3%82%A4%E3%83%88%E3%83%9E%E3%83%83%E3%83%97">サイトマップ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/sitemap">sitemap</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/google">google</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/dataproxy">dataproxy ...</a> http://mystral-kk.net/trackback.php/20071014095827919 sitemap2.php作成中 http://mystral-kk.net/article.php/20071004225724221 http://mystral-kk.net/article.php/20071004225724221 Thu, 04 Oct 2007 22:57:00 +0900 http://mystral-kk.net/article.php/20071004225724221#comments GeekLog <p>Geeklog日本語版に同梱されているpublic_html/directory/sitemap.phpのソースコードを見ると??という感じだったので,新たに書き直して,静的ページや掲示板のトピック一覧も表示するように改造中。</p> <p>コードを書いていると,以前作ったGoogle Sitemap Generatorのコードがかなり流用できることに気づいた。いっそのことプラグイン化して,人間用のサイトマップとGoogle用のサイトマップの両方をサポートするものにしてしまえば皆が幸せになれるかも。そういえば,以前,kimonoさんがリクエストを出していた気がする...</p> <p>この作業が終わったら,RSS Aggregator改造版を見直す予定。RSSフィードの取り込みを強化し,RSSのフィルタリング機能を追加するつもり。こちらもプラグイン化した方が早そうだ。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%B5%E3%82%A4%E3%83%88%E3%83%9E%E3%83%83%E3%83%97">サイトマップ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/google">google</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/rss">rss ...</a> http://mystral-kk.net/trackback.php/20071004225724221 nexPro Portal Suite http://mystral-kk.net/article.php/20071002073622653 http://mystral-kk.net/article.php/20071002073622653 Tue, 02 Oct 2007 07:36:00 +0900 http://mystral-kk.net/article.php/20071002073622653#comments GeekLog <p>Geeklogをベースにし,様々なビジネス用途のコンポーネントを組み込んだ[tech:nexPro] Portal Suiteが<a href="http://www.nextide.ca/">nextide</a>にて公開されている。コンポーネントの多くはBlaineさんが開発したものを改良したもののようだが,見慣れないものもある。</p> <ul> <li>nexForm - ダイナミックなオンラインフォーム&amp;エディタ。</li> <li>nexFlow - ワークフローエンジン。文書の回覧や承認を行う。</li> <li>nexFile - バージョンコントロール付きのファイル管理。</li> <li>nexList - リスト管理。</li> <li>nexMenu - ダイナミックなサイトメニュー管理。</li> </ul> <p>以上の機能に加えて,掲示板とCAPTCHAが組み込まれている。基本的には,GPLでサポート有償というパターンのようだ。日本語できちんと動作するかどうかはさだかではないが,Geeklogベースの商業サイトをすぐに構築したい人にとっては,有力な選択肢の1つになるだろう。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/nexpro">nexpro</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog ...</a> http://mystral-kk.net/trackback.php/20071002073622653 GeeklogのCVSアクセス http://mystral-kk.net/article.php/20070926221804407 http://mystral-kk.net/article.php/20070926221804407 Wed, 26 Sep 2007 22:18:00 +0900 http://mystral-kk.net/article.php/20070926221804407#comments GeekLog <p><a href="www.ggeklog.net/">Geeklog本家</a>のサーバが移動した後,anonymousユーザでCVSにアクセスすることができなくなっていて,歯がゆい思いをしていた。<a href="http://www.geeklog.net/staticpages/index.php/CVS">CVSアクセスに関する説明</a>によると,</p> <p><code> cvs -d:ext:anonymous@cvs.geeklog.net:/cvsroot/geeklog co Geeklog-1.x </code></p> <p>で良いはずなのだが,anonymousユーザは帰れと言われてしまう。extをpserverに変えても同じ。このときはMS Windows上でコマンドライン版のCVSを使っていた。</p> <p>今日,メーリングリストを眺めていると,<a href="http://www.tortoisecvs.org/">Tortoise CVS</a>ユーザが同じような質問をしていた。それによると,MS Windowsではextは使えず,sshにする必要があるとのこと。自分もTortoise CVSはインストールしていたので,やってみると成功した。以下はその覚え書き(というほどの代物ではないけど...)。</p> <ol> <li>チェックアウトしたいフォルダで右クリック。「CVSチェックアウト(k)...」を選択。</li> <li>モジュールタブで,「CVSROOT」に <b>:ssh:anonymous@cvs.geeklog.net:/cvsroot/geeklog</b> を入力。</li> <li>「モジュール」に <b>Geeklog-1.x</b> を入力。その右の「一覧の取得(F)...」はGeeklog.netのCVSサーバでは動作しないようだ。</li> <li>「OK」を押して少しすると,パスワードを訊かれるので, <b>geeklog</b> と入力。チェックアウトが始まる。1回目は全ファイルをチェックアウトするので,それなりの時間がかかる。</li> </ol> <p>これでいつでも最新版のソースコードを眺めることができる。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/cvs">cvs</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/tortoisecvs">tortoisecvs ...</a> http://mystral-kk.net/trackback.php/20070926221804407 Geeklog-1.4.1の後継者 http://mystral-kk.net/article.php/20070909214514995 http://mystral-kk.net/article.php/20070909214514995 Sun, 09 Sep 2007 21:45:00 +0900 http://mystral-kk.net/article.php/20070909214514995#comments GeekLog <p>以下の話は確定ではない&amp;うろ覚えで勘違いしている可能性があるので,その点をお含みいただきたい。本家のメーリングリストによると,Google Summer of Codeの成果を取り込んだGeeklogの次期バージョンは1.4.2ではなく,1.5.0になるらしい。主な変更点は,</p> <ul> <li>インストーラの改善。今までテキストエディタでconfig.phpとlib-common.phpを編集してからアップロードしていたが,これがオンラインでできるようになる。これに伴い,nmoxさんが開発しているuserconfigプラグインのようなGUIエディタが搭載され,オンラインで設定を変更できるようになる(らしい)。</li> <li>OpenID認証をサポート。OpenIDを持っていれば,Geeklogにもシングルサインオンできるようになる。</li> <li>Geeklogの機能の一部(記事・静的ページ)をWebサービス経由で公開する機能。ATOM publishing APIを使用する模様。</li> <li>プラグイン関係のAPIが改良される模様。</li> <li>linksプラグインが改良され,サブカテゴリを指定できるようになった。</li> </ul> <p>など。次期バージョンをいち早く試してみたい人は,<a href="http://www.geeklog.net/staticpages/index.php/CVS">こちら</a>からどうぞ。Anonymous CVSは調子が悪いが,Nightly CVS tarballは常にダウンロードできる。どんどんテストして,フィードバックを本家のメーリングリストに投げてくれ,とのこと。</p> <p>ついでに書くと,Geeklog-2.xも最近急速に開発が進んできているようだ。CVSリポジトリにコミットされる量が増えてきている。一度コードを読もうとしたことがあるが,Model = Propel + Creole, View = Flexy, Controler = Geeklog2コア,という今までとは全く違うMVC構成で,PHP5のパワーを生かしたデザインパターンを豊富に取り入れた設計なので,どちらの知識も乏しい自分には難しかった。それはさておき,このペースで行くと,来年はGeeklog-2.xのアルファ版が出ているかも。</p> <p>(9月12日追記)言うまでもないが,CVSからダウンロードしたバージョンを使用する際は自己責任でどうぞ。まだ実装されていない機能やバグが結構あるし,CVS版やリリース候補(RC)版から正規版へのアップグレードはサポートされていないので,そのつもりで。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/openid">openid</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/cvs">cvs</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog2">geeklog2 ...</a> http://mystral-kk.net/trackback.php/20070909214514995 テーマの移植チュートリアル http://mystral-kk.net/article.php/PORTING_A_THEME_TRANSLATED http://mystral-kk.net/article.php/PORTING_A_THEME_TRANSLATED Mon, 27 Aug 2007 09:40:00 +0900 http://mystral-kk.net/article.php/PORTING_A_THEME_TRANSLATED#comments GeekLog <p>Eric Warrenさんが<a href="http://www.gllabs.org/">GL Labs</a>に投稿していた<a href="http://www.gllabs.org/wiki/doku.php?id=geeklog:development:themes:porting_a_theme">Porting a Theme</a>が面白かったので,自分が和訳したものを<a href="http://www.gllabs.org/wiki/doku.php?id=ja:geeklog:development:themes:porting_a_theme">GL Labs Wiki</a>と<a href="http://wiki.geeklog.jp/index.php/%E3%83%86%E3%83%BC%E3%83%9E%E3%81%AE%E7%A7%BB%E6%A4%8D">Geeklog.jp Wiki</a>とに掲載してもらった。CMS用に公開されているオープンソースのテーマファイルはたくさんあるので,Geeklog用にテーマを移植する人が一人でも増えることを願う。</p> <p>掲載に際して意外と苦労したのが,Wikiの表記法の違い。最初にGL Labsの記事を翻訳した際には,Wikiの編集権を持っていなかったので,HTMLファイルとして保存したものを和訳した。GL Labsに投稿するにあたって管理者のMarkさんから編集権をもらったのだが,ふだん使っていない[tech:DokuWiki]なので,手作業で変換するのかと思ってぞっとした。</p> <p>すると,MarkさんがHTMLからのコンバータを紹介してくれた。</p> <ul> <li><a href="http://runtime-basic.net/Projekt:WikiTool">http://runtime-basic.net/Projekt:WikiTool</a></li> <li><a href="http://diberri.dyndns.org/wikipedia/html2wiki/">http://diberri.dyndns.org/wikipedia/html2wiki/ </a></li> </ul> <p>前者はMS Windows用のスタンドアロンのプログラムだが,日本語の処理がうまくいかないようだ。後者はPerlをベースとしたWebインターフェースを利用するので,コピペだけでOK。日本語も処理できるし,Wikiの種類も選べる。対応しているのは,Confluence, DokuWiki, Kwiki, Markdown, MediaWiki, MoinMoin, Oddmuse, PbWiki, PhpWiki, PmWiki, SnipSnap, Socialtext, TikiWiki, UseMod, WakkaWiki。このサイトを利用して,DokuWikiへの変換はさほど苦労せずにできた。</p> <p>次にGeeklog.jp Wikiに投稿するのに,同じHTMLファイルを使用して,MediaWiki用に変換したが,注釈()や画像のリサイズオプションが利用できないため,GL Labsのレイアウトを忠実に再現することはできなかった。表記法もDokuWikiの方が洗練されていて使いやすい。改めてDokuWikiの実力を思い知らされた。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/dokuwiki">dokuwiki</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/wiki">wiki</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%86%E3%83%BC%E3%83%9E">テーマ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E7%A7%BB%E6%A4%8D">移植 ...</a> http://mystral-kk.net/trackback.php/PORTING_A_THEME_TRANSLATED カレンダプラグイン http://mystral-kk.net/article.php/20070716192528771 http://mystral-kk.net/article.php/20070716192528771 Mon, 16 Jul 2007 19:25:28 +0900 http://mystral-kk.net/article.php/20070716192528771#comments GeekLog <p>Geeklog標準のカレンダプラグインに,<a href="http://www.sweetphp.com/nuke/modules.php?name=Script_Preview&amp;script=12">TotalCalendar</a>のような反復されるイベントを指定する機能やリマインダ機能,グループを指定しての検索機能を追加して欲しいという要望は以前から何度も話題に出ていたが,<a href="http://www.geeklog.net/forum/viewtopic.php?showtopic=76193">最近立っていたスレッド</a>では実装してくれた人に寄付金(pledges)を提供するという話が出ていた。</p> <p>先ほど掲示板を覗いてみると,寄付金の申し出も増え,結局,jmucchielloさんが実装を引き受けることになった。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%AB%E3%83%AC%E3%83%B3%E3%83%80">カレンダ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/totalcalendar">totalcalendar ...</a> http://mystral-kk.net/trackback.php/20070716192528771 PHP-4.x系列の終焉 http://mystral-kk.net/article.php/20070714160255707 http://mystral-kk.net/article.php/20070714160255707 Sat, 14 Jul 2007 16:02:55 +0900 http://mystral-kk.net/article.php/20070714160255707#comments ソフトウェア <p><a href="http://php.net/">PHP本家</a>の記事によると,PHP5が登場して3年経ち,PHP6も開発中であることから,今年いっぱいで4.x系列のサポートは終了,来年8月8日でセキュリティパッチの提供も終わるとのこと。PHP5普及のはずみになればよいが,国内のレンタルサーバ各社は追従できるだろうか? セキュリティパッチを提供しないままで4.x系列を提供するところもでてくるのではなかろうか?</p> <p>本格的に5.x系列が普及すれば,少しはまともなオブジェクト指向プログラミングが可能になるし,Zend Framework, Symfonyなどの5.x系列専用のフレームワークも使いやすくなる。</p> <p>アプリケーション制作者の側でも積極にPHP5への乗り換えを検討している人が増えてきていて,<a href="http://gophp5.org/">goPHP5</a>なんてサイトもある。このサイトに掲載されているアプリケーションの中には,PEAR, PHPUnit, CMS Made Simple, Website Baker, Drupal, phpMyAdmin, Propel, Typo3などのビッグネームもある。</p> <p>Geeklog本家のメーリングリストでも1週間ほど前に[tech:goPHP5]の話題が出ていて,Dirkさんを除くコア開発者たちはおおむねPHP5へ移行するのに肯定的だ。Dirkさんは例によって静観して議論のおとしどころを見守っている感じ。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/php">php</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/gophp5">gophp5 ...</a> http://mystral-kk.net/trackback.php/20070714160255707 RSS Aggregator改造版(その3) http://mystral-kk.net/article.php/20070613191758394 http://mystral-kk.net/article.php/20070613191758394 Wed, 13 Jun 2007 19:17:58 +0900 http://mystral-kk.net/article.php/20070613191758394#comments GeekLog <p>RSS Aggregator改造版で,</p> <ul> <li>ATOM1.0の時間情報を取れない</li> <li>リンクテキストに &amp; が含まれている場合, &amp;amp; と表示される</li> </ul> <p>という問題が報告された。前者は,ATOMのフィードを解析するGeeklogシステム側の問題。フィードの種類に応じてパーサを生成するファクトリ内部のエラーだった。Geeklog.netに投稿して,改修したとレスが来た。</p> <p>後者は,リンクテキストに単純に htmlspecialchars() を適用していたのが原因。&amp; などは二重にエスケープされることになってしまう。htmlspecialchars()で変換される前にいったんエンティティに戻しておき,htmlspecialchars()を適用すればよい。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/rss">rss</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/rss_aggregator">rss_aggregator ...</a> http://mystral-kk.net/trackback.php/20070613191758394 厄日 http://mystral-kk.net/article.php/200705282325078 http://mystral-kk.net/article.php/200705282325078 Mon, 28 May 2007 23:25:07 +0900 http://mystral-kk.net/article.php/200705282325078#comments その他もろもろ <p>昨日は光化学スモッグ注意報のせいで運動会は中止。実際,目がひりひりした(ような気がする)。</p> <p>今朝は,JRの人身事故のせいで,通勤先に1時間30分の延着。まあ,業務に支障は出なかったからよかったが...</p> <p>「この調子だとあと1回は災いに遭いそう。おばさんドライバーがバックしようとしている後ろを通っているときに,アクセルとブレーキを踏み間違えてドシン!かな」などと考えながら歩いていると,そのようにバックしかけている軽自動車の後ろを2回通る羽目になってしまった。明日が来るのがちょっと怖い...</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E5%8E%84%E6%97%A5">厄日 ...</a> http://mystral-kk.net/trackback.php/200705282325078 RSS Aggregator改造版(その2) http://mystral-kk.net/article.php/20070411231346503 http://mystral-kk.net/article.php/20070411231346503 Wed, 11 Apr 2007 23:13:46 +0900 http://mystral-kk.net/article.php/20070411231346503#comments GeekLog <p>RSS Aggregator改造版がGeeklog.jpで動作しない理由がやっと判明した。PHPのxml_parser_create()関数が受け付けるエンコーディングはUTF-8, ISO-8859-1, US-ASCIIの3種類なので,日本語を含むxmlファイルを処理するには,必然的にUTF-8を指定することになる。PHPのバージョンにかかわらず,ソースエンコーディングをUTF-8にするためには,xml_parser_create( 'UTF-8' );とすればよい。</p> <p>あとはUTF-8以外のフィード(EUC-JPなど)をxml_parse()に喰わせる前に,encoding='foo'を含めてUTF-8に変換してやればよい。この方針で行けば,mb_detect_encoding()などの確実性に欠ける関数を使わなくても済む。</p> <p>というところまではすぐに思いついたが,PHP4だと文字化けする。フィードデータはまちがいなくUTF-8で与えているのに,どうもxml_parse()がISO-8859-1と決めつけている節がある。なぜ...</p> <p>ふと,英語版のPHPマニュアルを見ていると,xml_parser_create()のノートにこんなコメントが載っていた。</p> [quote] <p>php at stock-consulting dot com (21-Feb-2005 10:47)</p> <p>Even though I passed "UTF-8" as encoding type PHP (Version 4.3.3) did *not* treat the input file as UTF-8. The input file was missing the BOM header bytes (which may indeed be omitted, according to RFC3629...but things are a bit unclear there. The RFC seems to make mere recommendations concering the BOM header). If you want to sure that PHP treats an UTF-8 encoded file correctly, make sure that it begins with the corresponding 3 byte BOM header (0xEF 0xBB 0xBF)</p> [/quote]<br> <p>このメモによると,どうもこの関数は好みがうるさく,PHP4を使ってUTF-8でデータを与えるときにはBOMをつけないとだめなようだ。これをヒントに,フィードデータをUTF-8に変換した後,BOMをつけてからパーサに読み込ませるとあっさり動作する。orz</p> <p>PHPはマニュアルが充実しているのが長所の1つだが,マニュアル化されていない地雷も数多くある。そういう意味で,マニュアルに付属しているUser contributed notesは貴重な資料であることは間違いない。</p> <p>これで安心したのも束の間,今度はGeeklog.jpの掲示板のフィードデータをいつのまにか読み込まなくなった。PHP5でも同様。<a href="http://feedvalidator.org/">FEED Validator</a>にかけてみると,不正な文字が含まれているせいでxmlパーサがエラーを起こしている。こういう状況だから,フィードデータを読み込めないのはある意味しかたないと思うが,FirefoxのSageはそんな逆境にもめげずにきちんと読み込んで動作する。</p> <p>まだまだ修行が足りないようだ。xml_parse()関数を使いながら,エラーをリカバーする方法があるのかもしれないし,だめならxml_parse()系の関数に頼らず自力でパーサーもどきを書く必要があるのかもしれない。SimpleXMLやDOMを使えば簡単だが,PHP4でも動作させるとなるとその方法も採れない。先は長そうだ...</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/rss">rss</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/rss_aggregator">rss_aggregator</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/xml_parse">xml_parse ...</a> http://mystral-kk.net/trackback.php/20070411231346503 RSS Aggregator改造版 http://mystral-kk.net/article.php/20070408163812977 http://mystral-kk.net/article.php/20070408163812977 Sun, 08 Apr 2007 16:38:12 +0900 http://mystral-kk.net/article.php/20070408163812977#comments GeekLog SaYさんが作成したRSS AggregatorがGeeklog-1.4.1では動作しないというレポートがGeeklog.jpの掲示板に複数,寄せられていた。関心があったので,ハックしたものが<a href="http://www.geeklog.jp/filemgmt/index.php?id=160">これ</a>。オリジナル版との違いは, <ul> <li>Geeklog-1.4.0, 1.4.1のどちらでも動作する。</li> <li>lib-common.phpを改造する必要はなくなった。必要な関数は皆phpblock_rssaggregator.phpに含まれている。</li> <li>タイムスタンプは,RSS2.0で使われているRFC822フォーマットだけでなく,Atom1.0などでも使われているISO.8601.1988フォーマットにも対応。</li> <li>フィードデータを表示するHTMLコードを指定可。</li> <li>記事が更新された時刻を表示可。</li> <li>簡単なキャッシュ機能を実装。</li> <li>フィードデータに含まれるURLをサニタイズ。RSSインジェクションをある程度防げる。実装の際には,<a href="http://ha.ckers.org/xss.html">XSS Cheat Sheet</a>を参考にした。</li> </ul> <p>ただ,問題点もあり,設置するサイトによっては文字化けしてしまう。PHP4を使うと文字化けするようなのだが,理由はまだわからない。Geeklog.jpに設置した場合がそうなのだが,phpblock_rssaggregator.phpの254行目を</p> <pre><code> &#36;feed = &#36;factory-&amp;gt;reader( &#36;rdfurl, &#36;_CONF&#91;'default_charset'&#93; ); </code></pre> から, <pre><code> &#36;feed = &#36;factory-&amp;gt;reader( &#36;rdfurl, '' ); </code></pre> <p>に変えると正常に動作することから,XMLパーサ関数に関連する不具合のようだ。この問題を解決すれば,使い勝手のよいものになりそう。<a href="http://www.geeklog.jp/">Geeklog.jp</a>の左ブロックに,RSS Aggregatorのデモを表示しているので,よろしければどうぞ。</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/rss">rss</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/rss_aggregator">rss_aggregator ...</a> http://mystral-kk.net/trackback.php/20070408163812977 mt2geeklogカスタム関数バージョンアップ http://mystral-kk.net/article.php/20070324183157154 http://mystral-kk.net/article.php/20070324183157154 Sat, 24 Mar 2007 18:31:57 +0900 http://mystral-kk.net/article.php/20070324183157154#comments Geeklog -- プラグイン Movable Typeのデータファイルをインポートするmt2geeklogカスタム関数を更新した。といっても,インポートファイルの拡張子を .log から .txt へ変更しただけ。必要な人は,<a href="http://mystral-kk.net/filemgmt/index.php?id=1">こちら</a>からどうぞ。 タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/mt">mt</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/mt2geeklog">mt2geeklog ...</a> http://mystral-kk.net/trackback.php/20070324183157154 jpmailプラグイン公開 http://mystral-kk.net/article.php/jpmail http://mystral-kk.net/article.php/jpmail Sun, 18 Mar 2007 15:47:00 +0900 http://mystral-kk.net/article.php/jpmail#comments Geeklog -- プラグイン <p>Geeklog-1.4.1ではメールの文字コードがUTF-8になってしまい,サーバーの環境やメーラによっては文字化けするケースが出てきた。特にhotmailでは顕著なようだ。</p> <p>lib-common.phpのコードを読んでみると,マルチバイト文字を含むメールのヘッダや本文はUTF-8でエンコードされる仕様になっている。ある意味,強引な仕様だ。</p> <p>この状況を改善すべく文字コードやメールの勉強を始めたが,なかなかややこしい。<a href="http://d.hatena.ne.jp/t_komura/20051105">「t_komuraの日記」</a>を読むと,文字コード変換はPHPのバージョンによって対応の仕方が違うし,<a href="http://www.kiwameru-php.net/">「超極める!PHP」</a>の上鍵さんの記事を読むと,日本語のメールを正しく送るのは至難の業であることがよくわかる。さらに<a href="http://hain.jp/index.php/tech-j/2007/02/13/p125">この記事</a>を読むと,PHPと文字コードの関係について自分がいかに無知だったかを思い知らされる。</p> <p>そんなこんなで自分のようなホビープログラマには荷が重いが,ないよりはましだろうと思って,<a href="http://www.geeklog.jp/article.php/jpmail">jpmailプラグイン</a>を作成した。GeeklogがUTF-8にエンコードしたヘッダや本文をデコードし,ISO-2022-JPでエンコードするだけなのだが,PHPのmb_detect_encoding()やmb_encode_mimeheader()を使わないで実装するのはかなりややこしい。</p> <p>結局,エンコーディングの検出はNucleusに含まれているmb_emulatorを使い,行の折りたたみやコメントの処理は「超極める!PHP」の記事を参考にした。</p> <p>XREA(PHP-5.1.4, MySQL-5.0.22)とノートPC(Windows XP PRO, PHP-5.2.1, MySQL-4.0.18)の環境では動作しているし,hotmail宛でも文字化けしていない。他の環境でもうまく動作すればよいのだが...</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/jpmail">jpmail</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン ...</a> http://mystral-kk.net/trackback.php/jpmail メーリングリストgeeklog-devel開放 http://mystral-kk.net/article.php/2007010607203858 http://mystral-kk.net/article.php/2007010607203858 Sat, 06 Jan 2007 07:20:38 +0900 http://mystral-kk.net/article.php/2007010607203858#comments GeekLog 今まで開発者しか購読できなかったメーリングリストを購読できるようになったので,早速登録。従来のgeeklog-devtalkは閉鎖される。関心のある方は <a href="http://lists.geeklog.net/mailman/listinfo/geeklog-devel">http://lists.geeklog.net/mailman/listinfo/geeklog-devel</a> からどうぞ。<br /> <br /> 別の話だが,Geeklogの機能リクエストの山が膨れあがっているのに業を煮やしてか,開発者を発掘するためかは定かではないが,Geeklog本家で賞金レースを行うという発表があった。<br /> <br /> <a href="http://www.geeklog.net/article.php/bounties">http://www.geeklog.net/article.php/bounties</a><br /> <br /> geeklog-devtalkでつい最近出ていた話題だが,あっさりと現実の提案になった模様。腕に覚えのある方は参加してみては?<br /> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%A1%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AA%E3%82%B9%E3%83%88">メーリングリスト ...</a> http://mystral-kk.net/trackback.php/2007010607203858 Geeklog-1.4.1公開 http://mystral-kk.net/article.php/Geeklog141 http://mystral-kk.net/article.php/Geeklog141 Mon, 01 Jan 2007 08:24:09 +0900 http://mystral-kk.net/article.php/Geeklog141#comments GeekLog Geeklog-1.4.1が正式にリリースされた。リリース直前でconfig.phpのデフォルトがutf-8から <pre><code> &#36;_CONF&#91;'language'&#93; = 'english'; &#36;_CONF&#91;'default_charset'&#93; = 'iso-8859-1'; </code></pre> に戻り,一安心。個人的にはMicrosoft SQL Serverがサポートされたことはどうでもよく,コンテンツの多言語化,カレンダ機能のプラグイン化,CAPTCHAのサポートが興味深い。 タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E5%A4%9A%E8%A8%80%E8%AA%9E%E5%8C%96">多言語化 ...</a> http://mystral-kk.net/trackback.php/Geeklog141 テーマエディタプラグイン 1.0.4 http://mystral-kk.net/article.php/2006122122142143 http://mystral-kk.net/article.php/2006122122142143 Thu, 21 Dec 2006 22:14:21 +0900 http://mystral-kk.net/article.php/2006122122142143#comments Geeklog -- プラグイン <p>[tech:Geeklog]テーマエディタプラグインのバージョン1.0.4を公開した。簡易版の画像アップローダを搭載し,テーマディレクトリ下の /images ディレクトリにテーマエディタから直接画像をアップロードできるようになった。<a href="http://mystral-kk.net/filemgmt/index.php?id=13">ダウンロードはこちらからどうぞ</a>。</p> <p>I've released the themedit (Theme Editor) plugin 1.0.4 for [tech:Geeklog]. In this version, you can uoload image files directly to /images directories under each theme's directory. You can <a href="http://mystral-kk.net/filemgmt/index.php?id=13">DOWNLOAD it from here</a>.</p> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%86%E3%83%BC%E3%83%9E%E3%82%A8%E3%83%87%E3%82%A3%E3%82%BF">テーマエディタ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3">プラグイン ...</a> http://mystral-kk.net/trackback.php/2006122122142143 Geeklog-1.4.1-RC1公開 http://mystral-kk.net/article.php/200612180632308 http://mystral-kk.net/article.php/200612180632308 Mon, 18 Dec 2006 06:32:30 +0900 http://mystral-kk.net/article.php/200612180632308#comments GeekLog 予定通り,RC1が公開された。データベースの変更はなし。MSSQL関係のバグつぶしと,多言語サポート改善,Professionalテーマの改善,投稿する前に呼び出されるAPIフックの追加,など。<br /> <br /> 正規版ではないが,どんどんダウンロード&フィードバックしてほしいとのこと。<br /> <br /> なお,1.4.1の正式版がリリースされると,1.3.x系列のサポートは終了するするので,まだのサイトはそろそろ1.4.x系列へ移行した方がよいかもしれない。<br /> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog ...</a> http://mystral-kk.net/trackback.php/200612180632308 Geeklog-1.4.1-RC1間近 http://mystral-kk.net/article.php/20061211081456884 http://mystral-kk.net/article.php/20061211081456884 Mon, 11 Dec 2006 08:14:56 +0900 http://mystral-kk.net/article.php/20061211081456884#comments GeekLog Google [tech:Sitemap] Generatorのバグつぶしが終わって一息ついていたら,メーリングリストでDirkさんが「遅くとも来週(今週?)末にはRC1を出す」と発言していた。現在のところ,MSSQL関連のバグつぶしと,[tech:CAPTCHA]関連のAPI追加で調整している。<br /> <br /> RC1を出した後は,さっさとやりたいとのことなので,ひょっとすると年内にも[tech:Geeklog]-1.4.1正式版がリリースされるかもしれない。<br /> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/geeklog">geeklog</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/captcha">captcha</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/sitemap">sitemap</a> ... http://mystral-kk.net/trackback.php/20061211081456884 Google Sitemap Generator-0.1.3 http://mystral-kk.net/article.php/20061207202119422 http://mystral-kk.net/article.php/20061207202119422 Thu, 07 Dec 2006 21:00:19 +0900 http://mystral-kk.net/article.php/20061207202119422#comments GeekLog バグ修正のみ。 <ul> <li>未来の記事までサイトマップにに含めていたバグを修正。</li> <li>サイトマップを作成した後,ファイルのタイムスタンプを更新するよう修正。</li> </ul> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/sitemap">sitemap</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%B5%E3%82%A4%E3%83%88%E3%83%9E%E3%83%83%E3%83%97">サイトマップ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/google_sitemap_generator">google_sitemap_generator ...</a> http://mystral-kk.net/trackback.php/20061207202119422 Google Sitemap Generator-0.1.2 http://mystral-kk.net/article.php/20061206215356864 http://mystral-kk.net/article.php/20061206215356864 Wed, 06 Dec 2006 21:53:56 +0900 http://mystral-kk.net/article.php/20061206215356864#comments GeekLog バグ修正とオプション追加。 <ul> <li>静的ページのうち,センターブロックに表示されるものの扱いを決めるオプションを追加。デフォルトでは,センターブロックに表示されないものだけをピックアップする。</li> <li>記事のうち,ドラフト(書きかけ)フラグが立っていたものまでサイトマップに含めていたバグを修正。</li> </ul> タグ:<a class="tag_link" href="http://mystral-kk.net/tag/index.php/sitemap">sitemap</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/%E3%82%B5%E3%82%A4%E3%83%88%E3%83%9E%E3%83%83%E3%83%97">サイトマップ</a> <a class="tag_link" href="http://mystral-kk.net/tag/index.php/google_sitemap_generator">google_sitemap_generator ...</a> http://mystral-kk.net/trackback.php/20061206215356864