NP_Mobileのインストール自体ははすんなりできたのですが、記事が最後までちゃんと表示されませんでした。
これはcles::blogがfancyUrlを採用していることや、NP_FootNoteなどをインストールしている関係で、HTMLタグの除去がうまく行えていないことが原因のようでした。ということで、PlugIn中のHTMLタグの除去処理部分を改造して、正常に表示が行えるようにしてみました*1。
さらに、財団法人サークルクラブ協会さんで紹介されているこちらの方法を参考に、ケータイからアクセスした場合にはケータイサイトにリダイレクトされるようにしました。
ケータイ対応の第一弾として財団法人サークルクラブ協会さんで配布されているNP_Mobile 0.2を導入してみました。
ケータイサイトはこちらから。
NP_Mobile 0.2:Nucleusの使い方 (財団法人サークルクラブ協会)
アイテムのページ分割プラグイン(※携帯端末用サイト向け)「NP_Mobile」をバージョンアップしました。プラグインの特徴などについては「NP_Mobile0.1の配布」を参考にして下さい。
ちゃんと画面分割もされてたり、ケータイらしく半角カナが出力されていたりと、なかなか面白いです。次はmoblogですかね。
根本的な問題は僕のケータイがN503iでカメラがついてないということなんですけど。
最近MostViewedがちゃんと更新されていないので、いろいろ調べてみました。
結論から言えばViewsのDoSkinVarで実装されていた部分がいつのまにかDoTemplateVarになっていたということが原因のようです。
つまり、<%Views%>はスキンではなく、テンプレートに書かなければいけないように仕様が変更されていたというわけです。
おかげさまでcles::blogでは検索サイト経由の訪問者が全体のPVに対して6~8%くらいの割合を占めるに至っています。サイトの運営者としては、どのような検索ワードでこのサイトが見られているかということに関して非常に興味があるところです。
探し物はなんですか その2 [検索キーワードプラグイン] - higuchi.com blog
"検索サイト経由でどこかのページにたどり着いた場合、たどり着いた先のページがあるサーバー側では、どこの検索サイトからやってきたのか、また、何という文字で検索してそこにたどり着いたのか、などといった情報が分かります。"
そのような欲求を満たしてくれるプラグインであるNP_SearchedPhraseを導入してみました。検索ワードが見えるだけでなく該当部分がハイライト表示されるようになるのも便利です。
セキュリティホールが見つかったため、急遽Nucleus 3.1にアップデートしました。
日本語版のダウンロードはこちらから。
"今回見つかったセキュリティホールは、ユーザー名と暗号化されたパスワードを管理権限のないものに取り出される危険をはらんでいます。これは3.01以前の全てのNucleusに存在します。"
セキュリティアップデートのほか、管理者画面とかのデザインにも多少変更があるようです。
blog.bulknews.netでmiyagawaさんがSimilarity Searchの結果をキャッシュするCGIを発表していました。
blog.bulknews.net: Similarity Search の負荷軽減に jscache
この問題を解消するために jscache という CGI スクリプトを作成しました(別名: くっつきキャッシュ)。このスクリプトのやっていることは単純で、リモートの js を取得して、サーバ側にキャッシュして保存。キャッシュ有効期間中は自分のサーバからコンテンツを吐き出すようにするものです。これならホスト側のサーバ負荷に表示が引きずられることはありません。
ならば、拙作のNP_SimilaritySearchにも同じ機能をつけてしまおう!という単純な発想でプラグインをアップデートしてみました。NP_SimilaritySearchではデータベースを利用してキャッシュを行います。
ダウンロードはこちら [NP_SimilaritySearch 1.1.0][178clicks]
※セキュリティバグをFixしたNP_SimilaritySearch v1.2をご利用ください。
これで大成功・・・といいたいところですが、確かに2回目からのアクセスは高速になったものの、最初のアクセスはかなり重い感じがします。これは回線の問題なのか、それとも実装の問題なのか・・・・。う?む。
(5/16追記)
時間帯によって重いことがあるようですがこれはbulkfeeds.netが混んでいるためのようです。
あと、くっつきキャッシュのようにもうちょっと汎用的なキャッシュPluginを作ったほうがイイのかな(NP_JsCacheみたいなやつ)。でも、そういうプラグインはもう既にありそうな気がするのでちょっと調べてみてからにしよう。
最近いろいろなblogをみてまわっていたりするわけですが、そのときにMTを使っているサイトさんではLatest Writebacksがツリー状に表示されていたりして、それをウチ(Nucleus)でも導入したいと思っていました。
そんなときに、Nucleusを導入しているサイトさんでもこの表示をしているところがあることがわかったので喜んでいたのですが、肝心のPluginの名前がわからず、結局導入できないままになっていました。
今日やっとそのPluginがNP_CommentTreeというものだとわかったので、早速導入してみることに。
いつも人様の作ったプラグインを利用させていただいているので、先日予告したとおりSimilarity Searchプラグイン「NP_SimilaritySearch」*1を練習がてら作ってみました。
動作確認は2.5CVS(UTF-8)で行っています。
3.0RCでも大丈夫なようです。(5/5 03:21 追記)
ダウンロードはこちら [NP_SimilaritySearch 1.0.0][58clicks]
キャッシュ機能がついた最新版(1.1.0)はこちら。
結構敷居が高いのかなと思っていたのですが、多少のPHPの知識と資料、そしてちょっとの根性があれば何とかなりそうな感じです。なんかネタがあれば、もうちょっといろいろ作ってみたいなぁ。
† 使い方
<%SimilaritySearch%>
<%SimilaritySearch(表示数, スタイル, ヘッダなし指定, リンクのtarget)%>
設定できる項目等はこちらに準じています。
また、パラメータは省略可能です。(省略した場合にはPluginの設定が適用されます)
遅ればせながらBulkfeeds: Similarity Searchに対応してみました。これにより詳細ページでは関連するblogが表示されるようになります。
どこかにNucleus用のを元にJavaScriptの書き方が解説してあるページはないかと思っていろいろ探してみたのだけれど、どうも見当たらない。仕方がないので、解説を基に自分で書いてみました。まぁ、書いたといってもパラメータをいじって、nucleus用のタグを書いただけですけど。
SimilaritySearch for Nucleus
<script language="JavaScript">
var url ='<%blogsetting(url)%>/item/<%itemid%>';
var n = 5;
var oe = 'utf-8';
var style = 'lite'; //'mt-comments' or 'lite'
document.write('<scr' + 'ipt language="JavaScript" src="http://bulkfeeds.net/app/similar.js?url='
+ escape(url)
+ '&n=' + n + '&style=' + style
+ '&oe=' + oe + '&noheader=1' + '"></scr' + 'ipt>');
</script>
でも、これいちいち書くのがめんどくさい気がしてきた。